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

MySQL用戶變量怎么定義?set和select用法詳解一看就懂

 更新時(shí)間:2026年07月23日 11:32:11   作者:依米娜娜  
還在為SQL語句間傳遞數(shù)據(jù)發(fā)愁?本文帶你快速掌握MySQL用戶變量的定義與使用,詳解set和select兩種賦值方式,避開常見陷阱,讓你的查詢更高效靈活

用戶變量

使用場景:定義一個(gè)值,方便其他的SQL使用,相當(dāng)于在不同的SQL之間進(jìn)行傳遞變量使用。

兩種定義用戶變量的方式:set select 

set的使用方法: 

set @變量名 {= | := } value [,@變量名 {= | := } value,…] ;?

set的合法變量值:

  • 1.字面量
  • 2.可以系統(tǒng)表達(dá)式
  • 3.可以來自于一個(gè)SQL語句
  • 4.可以是一個(gè)系統(tǒng)函數(shù) 

例1

定義用戶變量PI,其初值為3.1415926

SET @PI := 3.1415926;?

注意:用戶變量的數(shù)據(jù)類型派生自其值的數(shù)據(jù)類型 

例2

定義一個(gè)變量,其值是1號(hào)球隊(duì)的隊(duì)長號(hào)碼

SET @anr := (SELECT playerno FROM teams WHERE teamno=1);?

獲取變量的值: 

select @變量名;?

注意點(diǎn):

mysql> set @a=1;
Query OK, 0 rows affected (0.00 sec)
mysql> set @a=5,@b=@a;
Query OK, 0 rows affected (0.00 sec)
mysql> select @b;
±-----+
| @b |
±-----+
| 1 |
±-----+
1 row in set (0.00 sec)

?當(dāng)一次對(duì)多個(gè)變量定義時(shí),MySQL會(huì)同時(shí)檢測等號(hào)右邊的值是否成立,如果成立則將該值賦予用戶變量,所以在本次當(dāng)中b的值為a的舊值。

select設(shè)置用戶變量:

select :=這種方式,因?yàn)?在select當(dāng)中是比較操作符。

這種語法:

1)會(huì)返回一行

2)只能使用:=,不能使用=,=號(hào)這里被看做比較操作符

例3

創(chuàng)建用戶變量playerno并賦值為7

SELECT @playerno := 7;

例4

定義3個(gè)用戶變量

SELECT @name := ‘tom', @town := ‘Inglewood',
@postcode := ‘1234ab';

例5

查詢6號(hào)球員的姓名、城市和郵編,并保存到3個(gè)變量中

SELECT @name := name, @town := town, @postcode := postcode
FROM players
WHERE playerno = 6;

注意,如果SELECT查詢返回多行,就把最后一行的值賦給變量,而不會(huì)拋出異常

例6

定義變量@playerno,將players表中最小的球員編號(hào)賦給它:6

SELECT @playerno := playerno
FROM players
ORDER BY playerno DESC;
SELECT @playerno;

注意:當(dāng)用戶變量用在WHERE或者HAVING子句中時(shí),必須首先使用另外一條語句來定義它們 

例7

SELECT @pnr7 := 7
FROM players
WHERE playerno < @pnr7;

這條語句不會(huì)返回編號(hào)小于7的球員。因?yàn)閃HERE子句在SELECT語句之前執(zhí)行

用戶變量的生命周期:

只要會(huì)話不斷,該用戶變量可以一直使用,如果想實(shí)現(xiàn)多個(gè)會(huì)話之間的用戶變量傳遞,可以將用戶變量保存到數(shù)據(jù)表中。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • mysql中l(wèi)imit查詢踩坑實(shí)戰(zhàn)記錄

    mysql中l(wèi)imit查詢踩坑實(shí)戰(zhàn)記錄

    在MySQL中我們常常用order by來進(jìn)行排序,使用limit來進(jìn)行分頁,下面這篇文章主要給大家介紹了關(guān)于mysql中l(wèi)imit查詢踩坑的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • MySQL安裝與配置:手工配置MySQL(windows環(huán)境)過程

    MySQL安裝與配置:手工配置MySQL(windows環(huán)境)過程

    這篇文章主要介紹了MySQL安裝與配置:手工配置MySQL(windows環(huán)境)過程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Mysql多表操作方法講解教程

    Mysql多表操作方法講解教程

    這篇文章主要介紹了MySQL數(shù)據(jù)庫的多表操作,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下,希望對(duì)你的學(xué)習(xí)有所幫助
    2022-12-12
  • MySQL常用分庫分表方案匯總

    MySQL常用分庫分表方案匯總

    本文主要介紹了MySQL常用分庫分表方案匯總,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • MySQL中root用戶密碼管理的三種場景完全指南

    MySQL中root用戶密碼管理的三種場景完全指南

    在MySQL數(shù)據(jù)庫的日常運(yùn)維中,root用戶密碼管理是最基礎(chǔ)也最重要的操作之一,本文將針對(duì)三種常見場景,分別給出詳細(xì)的操作步驟,涵蓋MySQL?5.6、5.7、8.0三個(gè)主流版本,感興趣的小伙伴可以了解下
    2026-02-02
  • MySQL如何統(tǒng)計(jì)一個(gè)數(shù)據(jù)庫所有表的數(shù)據(jù)量

    MySQL如何統(tǒng)計(jì)一個(gè)數(shù)據(jù)庫所有表的數(shù)據(jù)量

    最近在做統(tǒng)計(jì)想查找一個(gè)數(shù)據(jù)庫里基本所有的表數(shù)據(jù)量,下面這篇文章主要給大家介紹了關(guān)于MySQL如何統(tǒng)計(jì)一個(gè)數(shù)據(jù)庫所有表的數(shù)據(jù)量的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • MySQL中Binlog文件占用空間比較大該如何清理

    MySQL中Binlog文件占用空間比較大該如何清理

    在MySQL中binlog(二進(jìn)制日志)是一種記錄數(shù)據(jù)庫操作的日志文件,它記錄了數(shù)據(jù)庫更改的所有操作,這篇文章主要介紹了MySQL中Binlog文件占用空間比較大該如何清理的相關(guān)資料,需要的朋友可以參考下
    2025-09-09
  • MySQL日志系統(tǒng)之錯(cuò)誤日志、慢查詢?nèi)罩?、二進(jìn)制日志詳解

    MySQL日志系統(tǒng)之錯(cuò)誤日志、慢查詢?nèi)罩?、二進(jìn)制日志詳解

    MySQL日志系統(tǒng)是數(shù)據(jù)庫管理的重要組成部分,它幫助數(shù)據(jù)庫管理員監(jiān)控?cái)?shù)據(jù)庫活動(dòng)、優(yōu)化查詢、恢復(fù)數(shù)據(jù)以及診斷問題,這篇文章主要介紹了MySQL日志系統(tǒng)之錯(cuò)誤日志、慢查詢?nèi)罩?、二進(jìn)制日志的相關(guān)資料,需要的朋友可以參考下
    2025-05-05
  • MySQL截取和拆分字符串函數(shù)用法示例

    MySQL截取和拆分字符串函數(shù)用法示例

    這篇文章主要介紹了MySQL截取和拆分字符串函數(shù)用法,結(jié)合實(shí)例形式分析了mysql針對(duì)字符串的截取與拆分函數(shù)SUBSTRING及SUBSTRING_INDEX相關(guān)使用方法,需要的朋友可以參考下
    2016-09-09
  • MySQL多版本并發(fā)控制MVCC底層原理解析

    MySQL多版本并發(fā)控制MVCC底層原理解析

    本文詳細(xì)講解了MySQL多版本并發(fā)控制MVCC底層原理,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12

最新評(píng)論

金坛市| 烟台市| 临颍县| 阜康市| 绥江县| 鄂伦春自治旗| 汉源县| 邳州市| 军事| 南木林县| 宜兴市| 岳阳县| 车险| 南雄市| 迁安市| 永昌县| 涞源县| 三亚市| 临西县| 新郑市| 宁城县| 巫溪县| 古丈县| 名山县| 鹿邑县| 岗巴县| 长治市| 卓尼县| 博湖县| 湖北省| 玉环县| 峨边| 桐乡市| 双桥区| 新泰市| 东兰县| 福州市| 旌德县| 宣城市| 井陉县| 多伦县|