gpt4 book ai didi

MySQL 5.6 : Select where value is in CSV colum

转载 作者:行者123 更新时间:2023-11-29 06:20:46 26 4
gpt4 key购买 nike

我有一个这样的数据库(Mysql 5.6):

id | value
--------------------------
1 | "value1;value2;value3"
2 | "value4;value5;value6"

我想提出这样的请求:

SELECT id FROM table WHERE 'value5' IS IN value
return --> 2

SQLFiddle:http://sqlfiddle.com/#!9/b5c347

我无法更改数据库架构

最佳答案

使用 LIKE 语法,但要这样使用:

SELECT id
FROM table
WHERE
value LIKE 'value5;%' OR
value LIKE '%;value5' OR
value LIKE '%;value5;%' OR
value LIKE 'value5';

这是一个肮脏的解决方案,无法索引,但应该可以满足您的需求(在合理的时间内在较小的表上)

另一个解决方案(如果您确定您的值不包含逗号):

SELECT id
FROM table
WHERE
FIND_IN_SET('value5', REPLACE(value, ';', ',')

关于MySQL 5.6 : Select where value is in CSV colum,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33418391/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com