第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何在MySQL中聲明變量?

如何在MySQL中聲明變量?

MMTTMM 2019-07-11 15:35:22
如何在MySQL中聲明變量?如何在MySQL中聲明一個(gè)變量,以便我的第二個(gè)查詢可以使用它?我想寫這樣的東西:SET start = 1;SET finish = 10;SELECT * FROM places WHERE place BETWEEN start AND finish;
查看完整描述

3 回答

?
守候你守候我

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超10個(gè)贊

MySQL中主要有三種類型的變量:

  1. 用戶定義變量(以@):

    您可以訪問(wèn)任何用戶定義的變量,而無(wú)需聲明或初始化它。如果引用未初始化的變量,則該變量的值為NULL和一種字符串。

    SELECT @var_any_var_name

    可以使用SETSELECT聲明:

    SET @start = 1, @finish = 10;

    SELECT @start := 1, @finish := 10;SELECT * FROM places WHERE place BETWEEN @start AND @finish;

    用戶變量可以從有限的數(shù)據(jù)類型集中分配一個(gè)值:整數(shù)、十進(jìn)制、浮點(diǎn)、二進(jìn)制或非二進(jìn)制字符串或空值。

    用戶定義的變量是會(huì)話特定的。也就是說(shuō),一個(gè)客戶端定義的用戶變量不能被其他客戶端看到或使用。

    它們可以用于SELECT查詢使用先進(jìn)的MySQL用戶變量技術(shù).

  2. 局部變量(無(wú)前綴):

    需要使用DECLARE在訪問(wèn)它之前。

    它們可以用作局部變量和存儲(chǔ)過(guò)程中的輸入?yún)?shù):

    DELIMITER //CREATE PROCEDURE sp_test(var1 INT) BEGIN   
        DECLARE start  INT unsigned DEFAULT 1;  
        DECLARE finish INT unsigned DEFAULT 10;
    
        SELECT  var1, start, finish;
    
        SELECT * FROM places WHERE place BETWEEN start AND finish; END; //DELIMITER ;CALL sp_test(5);

    如果DEFAULT子句,則初始值為NULL.

    局部變量的作用域是BEGIN ... END在其中聲明它的塊。

  3. 服務(wù)器系統(tǒng)變量(以@@):

    MySQL服務(wù)器維護(hù)了許多系統(tǒng)變量配置為默認(rèn)值。它們可以是類型的GLOBALSESSIONBOTH.

    全局變量影響服務(wù)器的整體操作,而會(huì)話變量則影響對(duì)單個(gè)客戶端連接的操作。

    若要查看正在運(yùn)行的服務(wù)器使用的當(dāng)前值,請(qǐng)使用SHOW VARIABLES陳述或SELECT @@var_name.

    SHOW VARIABLES LIKE '%wait_timeout%';SELECT @@sort_buffer_size;

    它們可以在服務(wù)器啟動(dòng)時(shí)使用命令行上的選項(xiàng)或選項(xiàng)文件中的選項(xiàng)進(jìn)行設(shè)置。在服務(wù)器運(yùn)行時(shí),可以動(dòng)態(tài)更改其中的大多數(shù)SET GLOBALSET SESSION:

    -- Syntax to Set value to a Global variable:SET GLOBAL sort_buffer_size=1000000;SET @@global.sort_buffer_size=1000000;
    -- Syntax to
     Set value to a Session variable:SET sort_buffer_size=1000000;SET SESSION sort_buffer_size=1000000;SET @@sort_buffer_size
     =1000000;SET @@local.sort_buffer_size=10000;


查看完整回答
反對(duì) 回復(fù) 2019-07-11
?
慕碼人8056858

TA貢獻(xiàn)1803條經(jīng)驗(yàn) 獲得超6個(gè)贊

SET @var_name = value

SET @var := value

兩個(gè)算子=:=被接受


選擇

SELECT col1, @var_name := col2 from tb_name WHERE "conditon";

如果多個(gè)記錄集僅找到col2中的最后一個(gè)值,則保留(覆蓋);

SELECT col1, col2 INTO @var_name, col3 FROM .....

在這種情況下,select的結(jié)果不包含col2值。


查看完整回答
反對(duì) 回復(fù) 2019-07-11
?
呼喚遠(yuǎn)方

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超11個(gè)贊

聲明var_name[,var_name].輸入[默認(rèn)值]此語(yǔ)句聲明存儲(chǔ)程序中的局部變量。

前。聲明id int無(wú)符號(hào)默認(rèn)值1;

若要為變量提供默認(rèn)值,請(qǐng)包含默認(rèn)子句。該值可以指定為表達(dá)式;它不一定是常量。如果缺少默認(rèn)子句,則初始值為NULL。

局部變量在數(shù)據(jù)類型和溢出檢查方面被視為存儲(chǔ)的例程參數(shù)。

變量聲明必須出現(xiàn)在游標(biāo)或處理程序聲明之前。

局部變量名稱不區(qū)分大小寫。允許的字符和引用規(guī)則與其他標(biāo)識(shí)符相同。

局部變量的作用域是開始.在其中聲明它的結(jié)束塊。該變量可以在嵌套在聲明塊內(nèi)的塊中引用,但聲明同名變量的塊除外。


查看完整回答
反對(duì) 回復(fù) 2019-07-11
  • 3 回答
  • 0 關(guān)注
  • 2739 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)