最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于SQL中SET與SELECT賦值的區(qū)別詳解

 更新時間:2013年06月05日 17:25:24   作者:  
本篇文章是對SQL中SET與SELECT賦值的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
最近的項(xiàng)目寫的SQL比較多,經(jīng)常會用到對變量賦值,而我使用SET和SELECT都會達(dá)到效果。
那就有些迷惑,這兩者有什么區(qū)別呢?什么時候哪該哪個呢?
經(jīng)過網(wǎng)上的查詢,及個人練習(xí),總結(jié)兩者有以下幾點(diǎn)主要區(qū)別:
假定有設(shè)定變量:
復(fù)制代碼 代碼如下:

DECLARE @VAR1 VARCHAR(1)
DECLARE @VAR2 VARCHAR(2)

1、SELECT可以在一條語句里對多個變量同時賦值,而SET只能一次對一個變量賦值,如下:
復(fù)制代碼 代碼如下:

SELECT @VAR1='Y',@VAR2='N'
-- 而SET要達(dá)到同樣的效果,需要:
SET @VAR1='Y'
SET @VAR2='N'
/*
   說到這個,SQL內(nèi)置的變量:@@ERROR 和 @@ROWCOUNT必須要在一句SQL語句中捕獲。如果用set分兩句來獲取它們,將獲取不完整,這時就應(yīng)該用select來獲取值。
*/

2、表達(dá)式返回多個值時,用SET將會出錯,而SELECT將取最后一個值,如下:
復(fù)制代碼 代碼如下:

----以下假定Permission表有多個IsRight記錄
SELECT @VAR1 = IsRight FROM Permission   --將取最后一個值

SET @VAR1 = IsRight FROM Permission   --將報錯

3、表達(dá)式無返回值時,用SET將置變量值為NULL,用SELECT交保持變量值,如下:
復(fù)制代碼 代碼如下:

----以下假定Permission記錄為空
SET @VAR1 = '初始值'

 
SELECT @VAR1 = IsRight FROM Permission   --此時@VAR1為'初始值'

SET  @VAR1 = (SELECT IsRight FROM Permission)   --此時@VAR1為NULL

4、使用標(biāo)量子查詢時,如果無返回值,SET和SELECT一樣,都將置為NULL,如下:
復(fù)制代碼 代碼如下:

----以下假定Permission記錄為空
SET @VAR1 = '初始值'

SELECT @VAR1 =(SELECT IsRight FROM Permission )   --此時@VAR1為NULL

SET  @VAR1 = ( SELECT IsRight FROM Permission)   --此時@VAR1為NULL

相關(guān)文章

  • mysql報1292?Incorrect?datetime?value錯誤的解決方法

    mysql報1292?Incorrect?datetime?value錯誤的解決方法

    這篇文章主要給大家介紹如何解決mysql報1292?Incorrect?datetime?value錯誤,文中有詳細(xì)的解決方案,具有一定的參考價值,需要的同學(xué)可以參考閱讀下本文
    2023-07-07
  • 連接mysql報錯——沒有設(shè)置“usessl=false”的問題

    連接mysql報錯——沒有設(shè)置“usessl=false”的問題

    這篇文章主要介紹了連接mysql報錯——沒有設(shè)置“usessl=false”的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • MySQL SQL語句優(yōu)化的10條建議

    MySQL SQL語句優(yōu)化的10條建議

    這篇文章主要介紹了MySQL中SQL語句優(yōu)化需要注意的10點(diǎn),,特別是大型高并發(fā)網(wǎng)站,需要的朋友可以參考下
    2014-03-03
  • MySQL 數(shù)據(jù)庫優(yōu)化的具體方法說明

    MySQL 數(shù)據(jù)庫優(yōu)化的具體方法說明

    以下的文章主要講述的是實(shí)現(xiàn)MySQL數(shù)據(jù)庫簡單實(shí)用優(yōu)化的具體方法,以及在實(shí)際操作中有哪些具體操作步驟是值得我們大家注意的。
    2010-05-05
  • MySQL 8.0.19支持輸入3次錯誤密碼鎖定賬戶功能(例子)

    MySQL 8.0.19支持輸入3次錯誤密碼鎖定賬戶功能(例子)

    這篇文章主要介紹了MySQL 8.0.19支持輸入3次錯誤密碼鎖定賬戶功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-01
  • mysql密碼過期導(dǎo)致連接不上mysql

    mysql密碼過期導(dǎo)致連接不上mysql

    mysql密碼過期了,今天遇到了連接mysql,總是連接不上去,下面有兩種錯誤現(xiàn)象,有類似問題的朋友可以參考看看,或許對你有所幫助
    2013-05-05
  • MySQL子查詢與HAVING/SELECT的結(jié)合使用

    MySQL子查詢與HAVING/SELECT的結(jié)合使用

    這篇文章主要介紹了MySQL子查詢在HAVING/SELECT字句中使用、及相關(guān)子查詢和WITH/EXISTS字句的使用,具有一定的參考價值,感興趣的可以了解一下
    2023-06-06
  • MySQL中SQL模式的特點(diǎn)總結(jié)

    MySQL中SQL模式的特點(diǎn)總結(jié)

    這篇文章主要給大家總結(jié)介紹了關(guān)于MySQL中SQL模式特點(diǎn)的相關(guān)資料,文章介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-09-09
  • 淺談mysql哪些情況會導(dǎo)致索引失效

    淺談mysql哪些情況會導(dǎo)致索引失效

    索引在我們使用MySQL數(shù)據(jù)庫時可以極大的提高查詢效率,然而,有時候因?yàn)槭褂蒙系囊恍╄Υ镁蜁?dǎo)致索引的失效,無法達(dá)到我們使用索引的預(yù)期效果,本文就介紹一下幾種索引失效的方法
    2021-11-11
  • 修改MySQL的默認(rèn)密碼的四種小方法

    修改MySQL的默認(rèn)密碼的四種小方法

    對于windows平臺來說安裝完MySQL后,系統(tǒng)就已經(jīng)默認(rèn)生成了許可表和賬戶,下文中就教給大家如何修改MySQ的默認(rèn)密碼。
    2015-09-09

最新評論

东台市| 西峡县| 泾川县| 文水县| 和田市| 柳河县| 昭苏县| 玛纳斯县| 余庆县| 红河县| 陕西省| 宁波市| 互助| 长海县| 横山县| 满洲里市| 图木舒克市| 晋州市| 多伦县| 萝北县| 平乡县| 荔波县| 博湖县| 项城市| 紫阳县| 工布江达县| 涞源县| 灌阳县| 射阳县| 泰州市| 萝北县| 龙泉市| 孝昌县| 囊谦县| 永新县| 景德镇市| 德令哈市| 鹤庆县| 宜昌市| 纳雍县| 南溪县|