对于下面的代码,我想创建一个名为totalScore2的新变量,它等于days + totalScore。
我该怎么做?
提前致谢,
约翰
$sqlStr = "SELECT
l.loginid,
l.username,
l.created,
DATEDIFF(NOW(), l.created) AS days,
COALESCE(s.total, 0) AS countSubmissions,
COALESCE(c.total, 0) AS countComments,
COALESCE(s.total, 0) * 10 + COALESCE(c.total, 0) AS totalScore
答案 0 :(得分:1)
SELECT DATEDIFF(NOW(), l.created) + COALESCE(s.total, 0) * 10 + COALESCE(c.total, 0) AS totalScore2
从中可以看出,在SQL中,您无法直接引用同一SELECT
语句中的其他列;相反,你必须指定整个公式。或者,您可以使用子查询,但这通常只是在一个小山丘中形成一座山。
当然这会产生一个新的列,而不是一个新的变量,但我很确定这就是你所追求的。