选择所有记录(如果它在MySQL中包含特定编号)?
为此,请concat()
与LIKE一起使用。以下是语法-
select *from yourTableName where concat(',', yourColumnName, ',') like '%,yourValue,%';
让我们创建一个表-
mysql> create table demo49 −> ( −> id varchar(20) −> , −> first_name varchar(20) −> );
借助insert命令将一些记录插入表中-
mysql> insert into demo49 values('4,5,6', −> 'Adam'); mysql> insert into demo49 values('5,3,2','Mike'); mysql> insert into demo49 values('3,4,9','Bob');
使用select语句显示表中的记录-
mysql> select *from demo49;
这将产生以下输出-
+-------+------------+ | id | first_name | +-------+------------+ | 4,5,6 | Adam | | 5,3,2 | Mike | | 3,4,9 | Bob | +-------+------------+ 3 rows in set (0.00 sec)
以下查询选择所有记录(如果它包含特定编号)-
mysql> select *from demo49 where concat(',', id, ',') like '%,4,%';
这将产生以下输出-
+-------+------------+ | id | first_name | +-------+------------+ | 4,5,6 | Adam | | 3,4,9 | Bob | +-------+------------+ 2 rows in set (0.00 sec)