sql 語句 where
【where 。
。in 。
。 】 使用【where 。
. exists。.】【where 。
。not in 。
。 】 使用【where 。
. not exists。.】SELECT [字段1],[字段2],[字段3],。
. FROM 表名1 AS a WHERE exists (SELECT 1 FROM 表名2 AS b WHERE a.[字段X] = b.[字段X] )注:1、a.[字段X] 和 b.[字段X] 是相互關聯的字段。 2、SELECT 1 FROM 中數字1 是沒有具體含義的你可以使用任何字段, 這里是為了減少占用系統資源建議你使用1。
sql 語句 where
【where 。。in 。。 】 使用【where 。. exists。.】
【where 。。not in 。。 】 使用【where 。. not exists。.】
SELECT [字段1],[字段2],[字段3],。. FROM 表名1 AS a WHERE exists
(SELECT 1 FROM 表名2 AS b WHERE a.[字段X] = b.[字段X] )
注:1、a.[字段X] 和 b.[字段X] 是相互關聯的字段。
2、SELECT 1 FROM 中數字1 是沒有具體含義的你可以使用任何字段,
這里是為了減少占用系統資源建議你使用1。
sql 語句 in的優化
假設原來的句子是
select * from t1 where t1.f1 in (select t2.f2 from t2 where t2.f2=xxx)
和你的很類似
你用子查詢 很慢
我們現在修改為:
select t1.* from t1 ,t2 where t1.f1 = t2.f2 and t2.f2=xxxx
這里使用了關聯查詢代替了子查詢大大提高效率。
其次你可以考慮在表t1.f1上加索引,提高查詢速度。