MySQL查询在一列中检查两个值

时间:2013-03-09 18:06:54

标签: php mysql

我正在编写一个查询,其中我在列

中有4种类型
Xtype
-----
P
C
D
R

我想查看Xtype=PXtype=D的位置,那么如何在同一列中使用它们?我知道我可以使用WHERE id=1 AND status=online用于不同的列但不确定如何检查同一列的两个值

2 个答案:

答案 0 :(得分:1)

您可以像这样使用WHERE .. IN

WHERE XType IN ('P','D')    -- checks whether the  Xtype is P or D

顺便扩展到OR:

WHERE (XType = 'P' OR Xtype = 'D')

如果要检查该列是否包含“P”和“D”的记录,那么您可以使用EXISTS&子查询:

WHERE EXISTS (SELECT 1 FROM TableName WHERE Xtype = 'P') 
  AND EXISTS (SELECT 1 FROM TableName WHERE Xtype = 'D')

答案 1 :(得分:1)

见Miky D.除此之外你可以简单地使用WHERE Xtype= 'P' OR Xtype = 'D',这背后没有魔法。