Mysql中@和@@符號的詳細使用指南

一、概述

@是用戶變量,@@是系統變量。

select @a;

變量名,如果你不加的話,會認為這是一個列名,但是這列不存在,就報錯瞭;

@變量名 : 定義一個用戶變量.

= 對該用戶變量進行賦值.

用戶變量賦值有兩種方式: 一種是直接用"=“號,另一種是用”:=“號。

其區別在於:

使用set命令對用戶變量進行賦值時,兩種方式都可以使用;

用select語句時,隻能用”:=“方式,因為select語句中,”="號被看作是比較操作符。

(@i:=@i+1)

可以在生成查詢結果表的時候生成一組遞增的序列號

select (@i:=@i+5) as rownum, surname, personal_name from student, (select @i:=100) as init;
select @ids := ‘101', @l := 0
GROUP_CONCAT + group by

按照分組,連接字段上的數據,默認以,,也可以指定分割符

二、使用語法及實踐 用戶自定義變量

1、用戶定義變量語法

SET @var_name = expr [, @var_name = expr]

如:set @t1 =100;

2、獲取用戶定義變量值方式,如:

select @t1 from dual;

如下圖

系統變量

1、查看全部系統變量指令

SHOW GLOBAL VARIABLES

2、查看單個系統變量

SHOW GLOBAL VARIABLES LIKE 'wait_timeout'

3、設置系統變量語法

SET GLOBAL 變量名 = 變量值

如:SET GLOBAL wait_timeout = 604800;

註:如果修改變量值後沒有生效,請退出從新再試下 。

4、獲取系統變量值的語法

select @@wait_timeout  from dual;

補充:MySQL的@與@@區別

@x 是 用戶自定義的變量 (User variables are written as @var_name)

@@x 是 global或session變量 (@@global @@session )

@@查看全局變量:

select @@log_error;

總結

到此這篇關於Mysql中@和@@符號詳細使用的文章就介紹到這瞭,更多相關Mysql @和@@符號使用內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: