“IN”查询不起作用。请指导我,如果我错了。在SQLite中查询
KaizenResultsInformationTable是具有字段“recordinfo”的MasterTable,该字段包含子表Ids作为字符串。 kaizenResultsRecordInformationTable是具有字段“recordId”的Childtable。
我必须匹配孩子的记录。
查询:
select recordinfo from KaizenResultsInformationTable
输出:; 0; 1; 2; 3; 4; 5; 6; 7; 8; 9; 10
查询:
select substr(replace(recordinfo,';','","'),3,length(recordinfo))
from KaizenResultsInformationTable`
输出:“0”,“1”,“2”,“3”,“4”,“5”
此查询不起作用:
select * from kaizenResultsRecordInformationTable
where substr(recordid,0,2) in (
select substr(replace(recordinfo,';','","'),3,length(recordinfo))
from KaizenResultsInformationTable
)
此查询工作:
select * from kaizenResultsRecordInformationTable
where substr(recordid,0,2) in ("0","1","2","3","4","5")
谢谢Blorgbeard,kaizenResultsRecordInformationTable有10条记录,recordid是1,2,3 ... 10。但是这个查询只能获取第一条记录。 – vadivelu 2011-03-09 12:38:27
@Gnanavadivelu是一个数字或字符串的记录ID?尝试用'recordid'替换上述查询中的'substr(recordid,0,2)'。 – Blorgbeard 2011-03-09 12:58:49
recordid是号码 – vadivelu 2011-03-09 15:00:16