您好,登錄后才能下訂單哦!
這篇文章主要講解了“什么是update語句”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“什么是update語句”吧!
這次要說的是sql里面的update語句。說到這里,肯定會有很多兄弟不滿意了,不就是update語句嗎?誰不會寫啊,update table set column=expression [where search_condition 啊。
但真的update語句就僅僅這樣嗎?它的精髓它的原理是什么呢?我們通過例子來說明:
假設有一張成績表,只有兩個字段,姓名和成績。怎樣用一個sql語句查詢出某個學生的姓名,成績以及在表中的排名?
呵呵,這個問題是上次我發過的,詳情見 https://www.jb51.net/article/53832.htm
結果可以去那里看。現在改改問題,假設這張成績表有三個字段,姓名、成績和排名,現在只有姓名和成績有值,怎樣將他們的排名更新上去呢?
有朋友可能會提出類似解決方案:先還是用查詢語句查詢出來,然后通過游標更新排名。
有沒有更好的解決方案呢?當然是有的,答案就是用update語句。
update 成績表 set 排名=(select count(*)+1 from 成績表 where a.成績<成績)
from 成績表 a
可以看到,只用一個語句就實現了。同時我們也可以發現它跟我們平常寫的update語句不同,多了from。其實update語句的原理和select語句很類似,完整的update語句應該是update table set column=expression from table [where search_condition] ,可見后面的一截完全就是個查詢語句。當update的table和查詢的table(也就是from后面的table)完全一致的時候則可以省略,寫成我們最常見的update table set column=expression [where search_condition] 。
感謝各位的閱讀,以上就是“什么是update語句”的內容了,經過本文的學習后,相信大家對什么是update語句這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。