如何编写计数大于1的Case语句?下面是我到目前为止所知道的:我收到了一个无效的标识符。
Select *, CASE WHEN COUNT(X.id ) >1 THEN X
ELSE isnull END AS testing
from TestTable发布于 2016-03-22 01:48:57
谢谢你的评论。我能够解决我的问题,因为我是Oracle的新手。
正确的说法应该是:
Select *, CASE WHEN COUNT(X.id ) >1 THEN 'X'
ELSE '' END AS testing
from TestTable
Group by *发布于 2016-03-22 12:36:38
COUNT本身是一个聚合函数,必须与GROUP BY一起使用。但您也可以将其用作分析函数:
SELECT t.*, CASE WHEN COUNT(t.id) OVER(PARTITION BY ...) > 1 THEN 'X'
ELSE '' END AS testing
FROM TEST_TABLEhttps://stackoverflow.com/questions/36137825
复制相似问题