Mysql 可以拆分列吗?

2021-11-20 00:00:00 split mysql

我有一列包含逗号分隔的数据:

I have a column that has comma separated data:

1,2,3
3,2,1
4,5,6
5,5,5

我正在尝试运行将分别查询 CSV 字符串的每个值的搜索.

I'm trying to run a search that would query each value of the CSV string individually.

0<first<5   and  1<second<3  and  2<third<4 

我知道我可以返回所有查询并自己拆分并自己比较.我很好奇是否有办法做到这一点,以便 mysql 进行处理工作.谢谢!

I get that I could return all queries and split it myself and compare it myself. I'm curious if there is a way to do this so mysql does that processing work. Thanks!

推荐答案

使用

substring_index(`column`,',',1) ==> first value
substring_index(substring_index(`column`,',',-2),',',1)=> second value
substring_index(substring_index(`column`,',',-1),',',1)=> third value

在你的 where 子句中.

in your where clause.

SELECT * FROM `table`
WHERE 
substring_index(`column`,',',1)<0 
AND
substring_index(`column`,',',1)>5

相关文章