我在mysql表中有这样的东西。
ID Text
1 a
2 b
3 a-b
4 b-a
5 a-b-c
6 a-b-d
通常你搜索一个列中的文本,我只想要相反,我想要一个查询来搜索文本中的所有列。我不知道是否有可能。
如果文字是" a-b-f "它必须返回ID为 3 的查询(" a-b")
如果文字是" a-c "它必须返回ID 1 (" a")
的查询如果文字是" b-a "它必须返回ID 2 (" b")
的查询如果文字是" b-b "它必须返回ID 2 (" b")
的查询如果文字是" a-b-c-d-e-f "它必须返回ID 5 的查询(" a-b-c")
如果文字是" c-a-a "它必须返回空查询
感谢您的帮助。
PD:我正在寻找类似的东西,但我找到的所有方法都是在列值中搜索文本,这与我说的相反。答案 0 :(得分:2)
可以像
一样使用 select ID from my_table
where 'your_text_seach' like concat ( text, '%')
order by length(text) desc
limit 1