帶WHERE子句的UPDATE語句


目前演示的幾個UPDATE語句都是一次性更新所有行的數據,這無法滿足只更新符合特定條件的行的需求,比如“將Tom 的年齡修改為12 歲”。要實現這樣的功能只要使用WHERE 子句就可以了,在WHERE 語句中我們設定適當的過濾條件,這樣UPDATE 語句只會更新符合WHERE子句中過濾條件的行,而其他行的數據則不被修改。

執行下邊的UPDATE語句:


UPDATE T_Person SET FAge = 12 WHERE FNAME="Tom" 

執行完此SQL語句后執行SELECT * FROM T_Person來查看表中的數據的變化:

可以看到只有第一行中的FAGE 被更新了。WHERE子句“WHERE FNAME="Tom"”表示我們只更新FNAME字段等於"Tom"的行。由於FNAME 字段等於"Tom"的只有一行,所以僅有一行記錄被更新,但是如果有多個符合條件的行的話將會有多行被更新,比如下面UPDATE 語句將所有年齡為25 的人員的備注信息修改為“BlaBla”:


UPDATE T_Person SET FRemark = "BlaBla" WHERE FAge =25 

執行完此SQL語句后執行SELECT * FROM T_Person來查看表中的數據的變化。

目前為止我們演示的都是非常簡單的WHERE 子句,我們可以使用復雜的WHERE 語句來滿足更加復雜的需求,比如下面的UPDATE 語句就用來將FNAME 等於’Jim’或者’LXF’的行的FAge字段更新為22:


UPDATE T_Person SET FAge = 22 WHERE FName ="jim" OR FName="LXF" 

執行完此SQL語句后執行SELECT * FROM T_Person來查看表中的數據的變化。

這里我們使用OR邏輯運算符來組合兩個條件來實現復雜的過濾邏輯,我們還可以使用OR、NOT等運算符實現更加復雜的邏輯,甚至能夠使用模糊查詢、子查詢等實現高級的數據過濾。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM