很难为此做一个好头衔(随意编辑),但希望它会更有意义..
说我有以下表格:
t1:
i1 v1
_________
1 bob
2 NULL
3 sam
4 NULL
5 kenny
5 NULL
t2:
i2 v2 item
______________
1 bob prod_1
2 nick prod_2
3 sam prod_3
4 jj prod_4
5 kenny prod_5
5 cartman prod_6
我需要在t2.i2 = t1.i1
上加入表格,但仅限于t2.v2
中不存在t1.v1
的地方。所以我试图得到以下结果:
目标:
i2 v2 item
__________________
2 nick prod_2
4 jj prod_4
5 cartman prod_6
下面的查询是我的第一次尝试,但是它无效,所以我正在尝试使用JOIN找到一个更有效的解决方案。
SELECT * FROM t2
WHERE v2 NOT IN (
SELECT v1 FROM t1 WHERE t2.i2 = t1.i1
)
答案 0 :(得分:2)
您的查询没问题,但我会使用NOT EXISTS
:
SELECT dm2.*
FROM web.delete_me2 dm2
WHERE NOT EXISTS (SELECT 1
FROM web.delete_me1 dm1
WHERE dm2.some_int2 = dm1.some_int1 and dm2.some_var2 = dm1.some_var1
);
虽然您可以将其写为join
,但此版本至少应该是性能良好的。您需要web.delete_me1(some_int1, some_var1)
上的索引。
答案 1 :(得分:0)
import shutil
import os
import urllib
myFile = open('unformatted.txt','r')
newFile = open("formatted.json", "w")
newFile.write('{'+'\n'+'list: {'+'\n')
for line in myFile:
newFile.write() // this is where I'm not sure what to write
newFile.write('}'+'\n'+'}')
myFile.close()
newFile.close()
或试试这个
SELECT DISTINCT T1.*, T2.*
FROM T1
JOIN T2
ON T1.ID = T2.ID
LEFT JOIN T2 AS T2NO
ON T2NO.NAME = T1.NAME
WHERE T2NO.NAME IS NULL
答案 2 :(得分:0)
<translate
android:fromXDelta="-80%" android:toXDelta="0%"
android:fromYDelta="2000%" android:toYDelta="0%"
android:duration="800" />
应该足够了
LEFT JOIN
答案 3 :(得分:0)
您是否需要t2
i2
所在的t1
和v2
中的所有记录?
如果是这样,您可以编写此查询
select * from t2
where i2 in (select i1 from t1)
and v2 not in (select v1 from t1 where v1 is not null)
not in
根据需要开展工作,v1
不应该null