我有以下查询:
SELECT ROUND(INTEGER(field)/64, 0)*64 as T,
COUNT(T) FROM [table] GROUP BY T;
但它给了我一个:
Field 'T' not found in table
我做错了什么?必须是微不足道的,但我不会看到它。
答案 0 :(得分:3)
改为使用COUNT(*)
:
SELECT ROUND(INTEGER(field)/64, 0)*64 as T, COUNT(*)
FROM [table]
GROUP BY T;
问题是在SELECT
中使用了列别名,而不是GROUP BY
。这应该在遗留SQL和标准SQL中都有效,尽管我强烈建议使用后者。