[英]MySql : Select statement using IN operator
我有一张表,其中包含多个字段,并且一个字段具有3个逗号分隔值
Column 1 Column 2
1 1,2,3
2 2,3,4
3 6,7,8
现在,我想运行一个SQL查询,该查询向我获取具有我作为输入发送的值的行。
像上面的示例一样,如果我将值2发送为函数的输入,则它必须返回1st 2行。
我尝试使用IN运算符,但失败了,因为它不获取包含我作为CSV的第二或第三值发送的输入的行。 在此示例中,它不返回第一行。
有人可以帮我这个忙吗?
在此先感谢,阿卡什
您可以使用FIND_IN_SET()
:
SELECT column1 FROM table WHERE FIND_IN_SET('2', column2) != 0
IN
运算符基本上是许多OR的快捷方式:
WHERE column2 = IN ('a', 'b', 'c')
给出与以下结果相同的结果
WHERE (column2 = 'a' OR column2 = 'b' OR column2 = 'c')
如果我正确理解了您的问题,然后尝试-从表中选择Column1,Column2,其中Column1 <=
干杯
您应该可以使用Like来执行此操作,例如:
SELECT * FROM tablename WHERE [Column 2] LIKE ("%2%");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.