MySQL从字段WHERE条件多行中选择一行

时间:2016-10-28 17:36:55

标签: mysql

试图找到答案,但仍然不能......表格如下:

  name,    room_chat
  Ratna          2
  Ima            2
  Ratna          3
  Yanis          3
我需要这样的东西 如果我select name from table where (name='Ratna' and name='Ima')我得到了结果

room chat
2

提前致谢

2 个答案:

答案 0 :(得分:1)

使用in子句如下:

select distinct a.room_chat from tableA a where a.name in ('Ratna', 'Ima')

答案 1 :(得分:1)

您有多行,但您想要查看一组行。这称为聚合。在您的情况下,您想要查看每个房间聊天,因此group by room_chat。您想知道是否在房间聊天中找到这两个名字,所以请计算名称。

查询:

select room_chat
from table 
where name in ('Ratna','Ima')
group by room_chat
having count(distinct name) = 2;