我们如何使用 SET 语句将一个 SELECT 结果分配给一个 MySQL 用户变量?


要使用 SET 语句将一个 SELECT 结果分配给一个用户变量,我们需要在括号内写 SELECT 语句作为子查询。条件是 SELECT 语句必须返回一个单一值。为了让大家理解,我们使用“Tender” 表中的数据,如下所示:

mysql> select * from Tender;
+----+---------------+--------------+
| Sr | CompanyName   | Tender_value |
+----+---------------+--------------+
| 1  | Abc Corp.     | 250.369003   |
| 2  | Khaitan Corp. | 265.588989   |
| 3  | Singla group. | 220.255997   |
| 4  | Hero group.   | 221.253006   |
| 5  | Honda group   | 225.292266   |
+----+---------------+--------------+
5 rows in set (0.04 sec)

现在,在以下查询中,我们将 tender_value 的最大值(四舍五入到小数点后 2 位)设置为变量 @Val_Max。

mysql> SET @Val_Max = (SELECT ROUND(MAX(tender_value),2) from tender);
Query OK, 0 rows affected (0.00 sec)

mysql> Select @Val_Max;
+----------+
| @Val_Max |
+----------+
| 265.59   |
+----------+
1 row in set (0.00 sec)

更新于: 20-6-2020

506 次查看

开始你的 职业生涯

通过完成课程获得认证

开始
广告
© . All rights reserved.