如何将条件语句放入SQL计数中?
我有一些连接日期和事务日期相同的条目,所以我想包括一个条件,排除计数是否为零(除以零的情况)。我想知道我是否可以把它包括在COUNT语句中 我尝试了下面的和其他一些细微的变化,试图包括一个条件 以下是我的一小段代码:如何将条件语句放入SQL计数中?,sql,amazon-redshift,Sql,Amazon Redshift,我有一些连接日期和事务日期相同的条目,所以我想包括一个条件,排除计数是否为零(除以零的情况)。我想知道我是否可以把它包括在COUNT语句中 我尝试了下面的和其他一些细微的变化,试图包括一个条件 以下是我的一小段代码: SELECT ... d.revenue / COUNT((DATEDIFF(day, c.join_date, d.transaction_dates)) <= 90) ... 选择 ... d、 收入/计数((DATEDIFF(day,c.join_date,
SELECT
...
d.revenue / COUNT((DATEDIFF(day, c.join_date, d.transaction_dates)) <= 90)
...
选择
...
d、 收入/计数((DATEDIFF(day,c.join_date,d.transaction_dates))您可以使用案例陈述
Select
...
Case When Count(foo) > 0 Then bar/count(foo)
Else 'skipped' End as ColumnAlias
...
请尝试保留此语法。在第一次查询之后,您的查询不正确
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN conditionN THEN resultN
ELSE result
END;
我仍然收到一个错误:无效操作:语法错误在“THEN”或附近。你在这里碰巧看到了什么吗?计数时的情况((DATEDIFF(day,c.agr\u tier\u eff\u dt,d.lift\u dt)0然后d.TOT\u RVNU\u AMT/COUNT((DATEDIFF(day,c.agr\u tier\u eff\u dt,d.lift)/*AS DATEDIFF*)你缺少括号)
在之前,我注释掉了整个case语句,无论出于什么原因@Y.Y,我的查询都运行得很好。我只是在下面分享了我的整个select语句:select COUNT((DATEDIFF(day,c.join\u date,d.transaction\u dates))@a_horse_,名称为aws此问题太模糊。请指定您使用的数据库引擎。如果不是Athena或Redshift,则此问题可能不应标记为aws
@MarkBredshift@a_horse_with_no_name很抱歉,我不熟悉DBMS这个术语。我对它不熟悉。