内布尔逻辑在SQL Server 2008中,这个查询的工作原理:使用SUM函数
SELECT
SUM(CAST(isredeemed AS TINYINT)) AS totalredeemed,
FROM rewards
GROUP BY merchantid
它给你的商家兑换奖励的数量。剧组需要避免出现错误Operand data type bit is invalid for sum operator.
现在我想要做一个类似的查询,但是只能找到在过去几天内获得的奖励。我尝试这样做:
SELECT
SUM(CAST((isredeemed & (MIN(dateredeemed) > '2014-01-10 05:00:00')) AS TINYINT)) AS claimedthisweek,
FROM rewards
GROUP BY merchantid
,我得到的错误
附近有语法错误 '>'。
我也试图与&&
并与AND
更换&
。但那些也不起作用。
如何让示例工作?
是的,这肯定会起作用,可能是最好的解决方案。 – Jonah