如何在 MySQL 中顯示列 Amount 中同一價格的兩個不同求和?


為此,您可以使用 case 語句。我們首先建立一個表 -

mysql> create table DemoTable1794
     (
     Amount int
     );
Query OK, 0 rows affected (0.00 sec)

使用 insert 命令在表中插入一些記錄 -

mysql> insert into DemoTable1794 values(100);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1794 values(80);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1794 values(320);
Query OK, 1 row affected (0.00 sec)

使用 select 語句從表中顯示所有記錄 -

mysql> select * from DemoTable1794;

這將生成以下輸出 -

+--------+
| Amount |
+--------+
|    100 |
|     80 |
|    320 |
+--------+
3 rows in set (0.00 sec)

以下是顯示列 Amount 中同一價格的兩個不同求和的查詢 -

mysql> select sum(Amount),
     sum( case when Amount < 150 then Amount else 0 end ) as SecondAmount
     from DemoTable1794;

這將生成以下輸出 -

+-------------+--------------+
| sum(Amount) | SecondAmount |
+-------------+--------------+
|         500 |          180 |
+-------------+--------------+
1 row in set (0.00 sec)

更新於: 2019 年 12 月 23 日

125 次瀏覽

開啟您的 事業

完成課程獲得認證

開始
廣告
© . All rights reserved.