将 id 以 Json 格式存储在数据库中
'["1454","474","545"]'
我可以构建列表 ID:
SELECT replace
(replace(
replace(
replace('["1454","474","545"]','[','\'')
,']','\'')
,'"','')
,',','\',\'')
mySql 返回“1454”、“474”、“545”
但是当我尝试从这个 ID 构建列表中列出数据库记录时:
SELECT col FROM table WHERE col in (REPLACE
(REPLACE(
REPLACE(
REPLACE('["1454","474","545"]','[','\'')
,']','\'')
,'"','')
,',','\',\''));
即使我在第一个“REPLACE”之前添加“SELECT”,mySql 也会显示“0 条记录”
有什么帮助吗?
最佳答案
尝试下面的查询,您还需要在 in 子句中添加选择:
SELECT col FROM table WHERE col in (select REPLACE
(REPLACE(
REPLACE(
REPLACE('["1454","474","545"]','[','\'')
,']','\'')
,'"','')
,',','\',\''));
关于mysql - 使用替换为 in 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23779342/