【问题标题】:Using Where statement on comma seperated value in sqlite在sqlite中对逗号分隔值使用Where语句
【发布时间】:2019-08-04 12:16:31
【问题描述】:

我有一个包含逗号分隔字段的表的 sqlite 数据库:

数据字段包含:

Frank; 34 California street; 0123456789

FieldData 字段包含:

Name; Address; Phone number

我只想对一个数据进行 where 查询。例如:

Select * From Persons Where Name = 'Frank';

请帮忙!

【问题讨论】:

  • 修复您的数据模型。这些值应存储在单独的列中。不在字符串中。
  • 我同意你应该修复你的数据模型。但如果你不能,你可以考虑这个:substr(field,1,instr(field,';')-1)
  • 我无法修复数据模型,因为数据列是动态的

标签: c# sql sqlite


【解决方案1】:

但是你的模型性能会很差!如果你必须这样做,你可以这样做:

  Select * From Persons Where substr(field,1,instr(field,';')-1) = 'Frank';

【讨论】:

  • 地址等其他数据呢?
  • 你为什么不带数据然后在你的代码中过滤它们?
  • 因为用户在递归 GUI 中进行查询
  • 您甚至可以从代码中过滤数据。为什么不考虑添加列并将它们从代码中删除以实现动态列。因为我认为在您的方法中,您将通过添加和删除列来使每一行的列不匹配
猜你喜欢
  • 1970-01-01
  • 2019-08-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-09
  • 1970-01-01
  • 1970-01-01
  • 2013-10-20
相关资源
最近更新 更多