MySQL 中的 @ 符号用法
在 MySQL 中,
@符号具有以下几种用法:
1. 用户变量
@符号可用于声明和获取用户变量。语法为:
<code>SET @variable_name = value;</code>
例如:
<code>SET @total_sales = (SELECT SUM(sales) FROM orders);</code>
2. 系统变量
@符号还可用于获取系统变量的值。语法为:
<code>SELECT @@system_variable_name;</code>
例如:
<code>SELECT @@version;</code>
3. 存储过程参数
在存储过程中,
@符号用于声明和传递参数。语法为:
<code>CREATE PROCEDURE procedure_name (
IN @param_name1 data_type,
IN @param_name2 data_type,
...
);</code>例如:
<code>CREATE PROCEDURE GetCustomerOrders (
IN @customer_id INT
);</code>4. 查询缓存命中
@符号可用于检查查询是否命中查询缓存。语法为:
<code>SELECT /*!@SQL_CACHE*/ * FROM table_name;</code>
如果查询命中缓存,则
@SQL_CACHE的值为 1,否则为 0。
5. 创建临时表
@符号可用于创建临时表。语法为:
<code>CREATE TEMPORARY TABLE table_name (
column_name1 data_type,
column_name2 data_type,
...
)
;</code>例如:
<code>CREATE TEMPORARY TABLE OrderSummary (
order_id INT,
product_id INT,
quantity INT
)
;</code> 