如果可以在字符串中找到列值,则选择行

时间:2019-07-10 09:49:27

标签: sqlite

我有一个包含ID号的字符串,类似这样:“ 1; 3; 5; 6; 7;”

我想选择一个包含在该字符串中的ID的SQLite表中的所有行。

一个select语句为我提供第1、3、5、6和7行。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

您可以使用LIKE运算符来完成此操作:

select * from tablename
where ';' || '1;3;5;6;7' || ';' like '%;' || id || ';%'

答案 1 :(得分:0)

您可以使用SQLite instr核心功能

SELECT * FROM your_table WHERE instr(';'||'1;3;5;6;7;',';'||id||';');
  • 在列表之前;并将id包裹在;中确保仅提取特定值(例如,使1不会获得11 111,等等)