Sql 使用groupby clickhouse获取所有列
我正在尝试获取clickhouse中所有问题数大于1的学生的专栏。我错过了什么Sql 使用groupby clickhouse获取所有列,sql,join,select,count,clickhouse,Sql,Join,Select,Count,Clickhouse,我正在尝试获取clickhouse中所有问题数大于1的学生的专栏。我错过了什么 SELECT * FROM table_1 PREWHERE IDNUMBER IN (SELECT IDNUMBER, COUNT(QUESTIONS) as XXX FROM table_1 GROUP BY IDNUMBER HAVING XXX > 1) 这是我得到的错误: DB::Exception: Number of columns in section IN doesn't match. 1
SELECT * FROM table_1 PREWHERE IDNUMBER IN (SELECT IDNUMBER, COUNT(QUESTIONS) as XXX FROM table_1 GROUP BY IDNUMBER HAVING XXX > 1)
这是我得到的错误:
DB::Exception: Number of columns in section IN doesn't match. 1 at left, 2 at right.: While executing MergeTreeThread
子查询应仅返回一列,而包含两列:
SELECT *
FROM table_1 PRE
WHERE IDNUMBER IN (SELECT IDNUMBER FROM table_1 GROUP BY IDNUMBER HAVING COUNT(*) > 1)
XXX未在您的案例中定义,即未考虑问题数量consideration@tandem例如我已经改变了。我使用了
COUNT(*)
,但是如果QUESTIONS
是可为空的列,您可以将其更改为COUNT(QUESTIONS)
。这种情况下的问题可以为空。如果不可为空,该如何处理?@tandem:如果可为空,请在上述查询中将COUNT(*)
替换为COUNT(QUESTIONS)
。如果问题不可为空,我们如何处理?如果我错了,请纠正我,COUNT(*)您将考虑所有列,而不一定是问题,因此,如果任何列的COUNT>1,它将返回它。