SQL - 检查表中的元素是否有两个与其位于同一行的其他元素

时间:2016-11-30 05:09:14

标签: mysql sqlite

请原谅我缺乏正确的术语,我对SQL非常陌生。

我有一个名为Food的表,它有3列:id,name和type。

ID |名称|键入
1 |鸡肉|家禽
2 |白菜|蔬菜
3 |鸡肉|百胜
4 |爆米花|荫

我写了一个返回2种“类型”的功能(即家禽和百胜),我想检查一下我的食物是否有两种类型。有没有办法写这个功能而没有特别命名“Poultry”和“Yum”?

1 个答案:

答案 0 :(得分:0)

如果按名称分组,则可以检查每个名称的行数:

SELECT Name,
       group_concat(Type)   -- if you want to konw the types
FROM Food
GROUP BY Name
HAVING count(*) >= 2;