使用MySQL IN()从逗号分隔的值中获取记录?
使用FIND_IN_SET()代替MySQLIN()
。让我们首先创建一个-
mysql> create table DemoTable1423 -> ( -> CountryName varchar(100) -> );
使用insert在表中插入一些记录-
mysql> insert into DemoTable1423 values('AUS,UK'); mysql> insert into DemoTable1423 values('US'); mysql> insert into DemoTable1423 values('AUS,UK,US');
使用选择显示表中的所有记录-
mysql> select * from DemoTable1423;
这将产生以下输出-
+-------------+ | CountryName | +-------------+ | AUS,UK | | US | | AUS,UK,US | +-------------+ 3 rows in set (0.00 sec)
这是使用FIND_IN_SET()获取记录的查询-
mysql> select * from DemoTable1423 where find_in_set('US',CountryName);
这将产生以下输出-
+-------------+ | CountryName | +-------------+ | US | | AUS,UK,US | +-------------+ 2 rows in set (0.00 sec)