in及not in與組合查詢的效率比較

2021-06-18 13:27:31 字數 512 閱讀 6142

以下兩條語句的查詢結果是一樣,但效率有比較大差別

1、select *

from users, user_group

where users.id = user_group.userid

and user_group.groupid = ' '

測試結果:

顯示行 0 - 17 (18 總計, 查詢花費 0.0041 秒)

顯示行 0 - 3 (4 總計, 查詢花費 0.0039 秒)

顯示行 0 - 3 (4 總計, 查詢花費 0.0051 秒)

2、select * from users where id in (select userid from user_group where groupid=' ')

測試結果:

顯示行 0 - 12 (13 總計, 查詢花費 0.0272 秒)

顯示行 0 - 4 (5 總計, 查詢花費 0.0174 秒)

顯示行 0 - 3 (4 總計, 查詢花費 0.0207 秒)

子查詢與組合查詢

當我們想查詢另外乙個表的字段資訊的時候就可以使用子查詢 select 欄位1 欄位2,select 字段 from 表2 where 條件 from 表1因為這邊in是可以放乙個集合的所有可以結合使用exists與in差不多但是要注意寫法 select 欄位1 欄位2 from 表1 where 欄...

SQL 子查詢與組合查詢

2.組合查詢 union union all 在 where 條件中某個值可以通知子查詢句表示 就是 select 鑲嵌select 語句select from table1 where id select id from table2 where name xx with as 相當於將 as 內...

Linq語句in與not in的使用

1.in的使用 1 當多項查詢的是guid型別時 region 將string陣列轉化guid陣列 string projidlist projidset.trim split guid guid projid new guid projidlist.length for int i 0 i pro...