關於sql server 巢狀查詢 子查詢的問題

時間 2022-02-01 18:05:46

1樓:匿名使用者

x,y作為關聯是吧:

update table_a set z='kc'

where exists(

select x,y from table_b where table_a.x=table_b.x and table_a.y=table_b.y)

建議你先用查詢語句驗證下查的結果是否正確:

select * from table_awhere exists(

select x,y from table_b where table_a.x=table_b.x and table_a.y=table_b.y)

-----要實現(0,0)、(1,1)這樣,可在where中加上 x=y的條件:

and table_a.x=table_a.y

2樓:匿名使用者

update table_a set z='kc'

where (x + y) in

(select x+y from table_a,table_b where table_a.x=table_b.x and table_a.y=table_b.y)

這樣應該就可以了。。

不過你是數字的話,最好cast成varchar後,比較精確

關於sql server2008的相關子查詢,巢狀子查詢和連線子查詢的區別(怎麼分辨),各自執行的原理

3樓:乍寒還暖

select * from a ,b where a.xx=b.xx 內連線

select * from a left/right join b on a.xx=b.xx 左或者右連線查詢

這種就叫做連線查詢,兩個表有某一列存在一定關聯

select * from a where a.id in (select id from b )

select * from (select * from b where b.xx='xx')

這兩種就叫巢狀子查詢,它是指,需要查詢的條件或者主題在另外一個限定範圍內(不能直接取得),需要用另一個查詢限定範圍

我的簡單表達,不明瞭的,還是參照教科書吧

關於sql的巢狀查詢和連線查詢

4樓:匿名使用者

沒有相同欄位那是沒辦法的情況是可以用巢狀查詢,一般不推薦使用巢狀查詢,因為每一條記錄資料都會去執行一次查詢,這樣對效能影響很大,特別是記錄超過1000的話就有明顯感覺了~~~

5樓:匿名使用者

只要有相同點,連線和巢狀互相都是可以用的,這個沒有特定要求,什麼時候用是業務需求決定的。

但是要注意,能用一條sql完成就不要用多表聯查,能用多表聯查就不要用子查詢,所以建表的時候要考慮好表結構。使用多表聯查一定要建立主外來鍵關係,會提高查詢速度。

遇到問題首先想的是能不能用最簡單的sql完成想要的功能,做不到才去考慮其他方法。

Sql Server2019查詢sql語句怎麼寫

easy select order.ordernumber,user.username,pruduct.productname,shop.shopname from order,user,cart,pruduct,shop where order.userid user.serid and cart...

如何檢視SqlServer查詢語句的執行效率

sql的藝術 使用語句查詢sql server執行過的語句及執行效率 愛可生雲資料庫 sql 語句摘要可以用在mysql的各個方面,比如 效能字典裡對語句的分析,查詢重寫外掛規則改寫等等。接下來依次看下語句摘要在這兩方面的使用。1.效能字典 mysql call sys.ps setup enabl...

求常用的sql server查詢語句,謝謝

select from 表名 不帶條件查詢 select from 表名 where id 1 帶條件查詢 select count from 表名 查詢記錄條數 給你個連結,50句強大sql 學會你的基本功就過關了, 我今天上課了 select from 表名 where 欄位1 值1 代表所有欄...