我有以下查询工作:子查询子句中
SELECT DISTINCT table1.field1, table1.field2
FROM table1
WHERE table1.field3 IN (1,2,3)
结果:
field1 field2
Data1 60
Data2 61
Data3 62
而下面的查询只给我,当它应该给出确切相同的结果的第一行第一个查询。
SELECT DISTINCT table1.field1, table1.field2
FROM table1
WHERE table1.field3 IN (SELECT table2.field1 FROM table2 WHERE table2.field2 = 100)
结果:
field1 field2
Data1 60
如果我执行subquery (SELECT table2.field1 FROM table2 WHERE table2.field2 = 100)
,结果是 “1,2,3”,酷似第一个查询。
我错过了什么?
你可以发布一些示例数据吗? – Taryn 2012-02-27 14:51:34
请将您的文章中的查询结果复制粘贴,同时也列出descr表。发布数据时,在select子句中包含field3。 – danihp 2012-02-27 14:52:02
子查询是否返回三个单独的行,或者一个sngle字符串“1,2,3”? – Mchl 2012-02-27 14:53:13