我需要一个包含两部分的查询。 我的意思是两个where子句。
到目前为止,我已经达到了以下目标,但它已经正常工作了。SELECT * from items
where
FIND_IN_SET( '3', category_id )
AND postcode LIKE 'sw19%'
order by id
此查询仅运行第一部分,即FIND_IN_SET()
部分。并忽略第二部分,即邮政编码检查...
我想知道这种查询是否有解决方案。
详情
我想比较两列中的值:
1列是csv列,例如。 1,2,3,4,5
另一个是邮政编码B17 SW19等
表格如下。
---+------+-------------+----------+- id | item | category_id | postcode | ---+------+-------------+----------+- 1 | abc | 1,2,3,4 | SW19 | ---+------+-------------+----------+- 2 | def | 3,4,5 | NW6 | ---+------+-------------+----------+- 3 | xyz | 6,7,8,9 | SW19 | ---+------+-------------+----------+- 4 | ghi | 8,9,10,11 | SW19 | ---+------+-------------+----------+-
等
如果我想选择category_id
包含'3'
并且其邮政编码从'SW'
开始的条目,那将是什么查询?
答案 0 :(得分:1)
我刚刚找到了解决方案,它完全解决了我的问题,虽然它将来有助于某人。
嗯,查询是这样的:
Select * from table_name where FIND_IN_SET('3', category_id) >0 AND postcode LIKE 'sw%'
此致 邻省。
答案 1 :(得分:0)
:)只是简单查询一下
SELECT * FROM tablename1 WHERE category_id LIKE '%,3,%' AND postcode LIKE 'SW%'