繁体   English   中英

MySql:使用IN运算符的Select语句

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM