Php mysql |从空列请求并在_集中查找
我有一张桌子:Php mysql |从空列请求并在_集中查找,php,mysql,request,find-in-set,Php,Mysql,Request,Find In Set,我有一张桌子: id name position status 1 A 1,2 1 2 B 1 1 3 C 1 4 D 2 1 其中:位置列为文本字段; 我的要求如下: SELECT `id` FROM `table` WHERE `status`=1 AND `position` > '' AND `position` = FIND_IN_S
id name position status
1 A 1,2 1
2 B 1 1
3 C 1
4 D 2 1
其中:位置
列为文本字段;
我的要求如下:
SELECT `id`
FROM `table`
WHERE `status`=1
AND `position` > ''
AND `position` = FIND_IN_SET( 1, `position` )
OR `position` = FIND_IN_SET( 2, `position` )
此请求将返回:1,2,3,4。这是一个错误,因为我需要:1,2,4->
条件:(位置
'')。
哪里有问题,如何更改我的请求?
谢谢。在检查字段列表中的数字时,您不需要检查位置是否为空 您不需要检查
position=FIND_IN_SET…
。它将返回1所在位置的值
你需要这样做:
SELECT `id`
FROM `table`
WHERE `status`=1
AND FIND_IN_SET( 1, `position` )
OR FIND_IN_SET( 2, `position` )