我不知道如何用可搜索的方式来表达我的问题,如果已经回答,请原谅我。我对SQL命令不够熟悉,甚至没有指出我正确的方向。我有一个sqlite表链接另外两个表。例如:
╔═════╦══════════╦══════════╗ ║ key ║ SpellKey ║ ClassKey ║ ╠═════╬══════════╬══════════╣ ║ 1 ║ 2 ║ 2 ║ ║ 2 ║ 2 ║ 10 ║ ║ 3 ║ 2 ║ 12 ║ ║ 4 ║ 3 ║ 10 ║ ║ 5 ║ 3 ║ 12 ║ ║ 6 ║ 4 ║ 2 ║ ║ 7 ║ 4 ║ 12 ║ ╚═════╩══════════╩══════════╝
ClassKey和SpellKey是外键。目标是找到所有具有ClassKey = 2 AND ClassKey = 12的SpellKey。提供的数据集的结果应返回:2和4。
" WHERE"语句如" ... WHERE ClassKey = 2 AND ClassKey = 12"没有工作,因为显然一行不能同时是2和12。如果可能的话,我想要一个可以做到这一点的sqlite3语句。
答案 0 :(得分:1)
我找到了一种使用“自联接”方法的解决方案。
SELECT A.SpellKey
FROM TableName A, TableName B
WHERE A.SpellKey = B.SpellKey
AND A.ClassKey=2 AND B.ClassKey=12