我有一個名爲food
表:使用查找最頻繁的看到collumn_name最大
CREATE TABLE food(
name varchar(30) primary key,
type varchar(30)
);
我想找到出現在該表中的大部分時間type
。
我能找到這個使用
SELECT type
FROM food
GROUP BY type
ORDER BY count(type) DESC
LIMIT 1
但limit 1
未列入標準。如何使用MAX
找到相同的結果?例如我想要類似
SELECT type
FROM food
GROUP BY type
HAVING count(type) = MAX(count(type));
HAVING count(type) = MAX(count(type));
是不允許的。
的ANSI SQL替代'LIMIT 1'是'FETCH FIRST 1個ROW'。如果兩種類型具有相同的最大行數,那麼添加'WITH TIES'並且你會得到兩行。 (不幸的是,還沒有被很多dbms產品支持。) – jarlh