sql为select创建正确的查询

z4bn682m  于 2021-06-19  发布在  Mysql
关注(0)|答案(2)|浏览(369)

我有餐桌笔记。有列“tags”(varchar(255))。例如,数据为:

1)Content='Note1', tags='18,20' 
2)Content='Note2', tags='18',
3)Content='Note3', tags='45',
4)Content='Note4', tags='118,75'

我需要为select all rows with tags'18'编写sql,因此结果必须如下所示:

1)Content='Note1', tags='18,20' 
2)Content='Note2', tags='18',

我尝试编写sql:

SELECT * FROM `notes` WHERE tags LIKE ('%18%')

但结果是错误的:

1)Content='Note1', tags='18,20' 
2)Content='Note2', tags='18',
4)Content='Note4', tags='118,75'

我怎样才能修好它?

nkoocmlb

nkoocmlb1#

使用 FIND_IN_SET 功能

SELECT * FROM `notes` WHERE FIND_IN_SET('18', tags );
hwamh0ep

hwamh0ep2#

你必须自己创造 SPLIT function 用它来代替 LIKE

相关问题