在MySQL中,@符號是一個重要的運算符,它在SQL語言中被用來表示變量或者用戶程序自定義的變量。使用@符號的方式非常簡單,只需要在變量名前面加上@符號即可。
@my_var := 10; //聲明一個變量
這個變量名為my_var,值為10,聲明過程中使用了”:=”賦值運算符。此時,@my_var的值就是10。在MySQL中,@符號還可以在語句中被用作根據指定的模式匹配字符串的變量。
SELECT * FROM my_table WHERE my_column LIKE 'A%'; SET @my_var = 'A%'; SELECT * FROM my_table WHERE my_column LIKE @my_var;
與聲明變量相同,我們也可以使用@符號來聲明一個模式來模糊搜索,只需要使用”SET”語句即可。這樣我們就可以使用@my_var來代替模糊搜索字符串。當然@符號還可以有其他用途,比如在MySQL中使用Stored Procedures和Functions來執(zhí)行自定義的代碼塊時,可以使用@符號聲明變量或者對象。
CREATE FUNCTION my_function(...) RETURNS INT BEGIN DECLARE my_var INT DEFAULT 10; ... END;
在這個例子中,我們創(chuàng)建了一個名為my_function的自定義MySQL函數,在函數體中,我們使用了DECLARE語句聲明了一個名為my_var的變量并進行初始化,在整個函數體中my_var都可以被認為是一個全局變量。在其他語言中,0x40相當于ASCII碼中的符號“@”,但是在MySQL中0x40代表的是@符號,因此在開發(fā)中我們需要區(qū)分。