1. 程式人生 > >mysql sum()函式及減法

mysql sum()函式及減法

寫sql的時候發現需要用到減法,搜了一下也沒找到這麼個函式,看到有人直接用 ‘-’   所以我也用了

修改前

SELECT

(WIN.SUM(AMOUNT)-REVOKE.SUM(AMOUNT)) AS BONUS_AMOUNT
FROM
(SELECT
SUM(AMOUNT) 
FROM
order
WHERE
ORDER_TYPE = 'MY_WIN') WIN,
(SELECT
SUM(AMOUNT) 
FROM
order
WHERE

ORDER_TYPE = 'REVOKE_BONUS') REVOKE

sql報錯在下面這個表中 REVOKE位置出錯,看了一下發現是跟sql裡面的關鍵詞一樣,衝突了,sql沒有把他解析成一個表名,所以要換掉。

然後發現win.sum(amount)不存在,需要加別名

所以最後就修改成了下面的

SELECT

(WIN.WM-REV.RM) AS BONUS_AMOUNT
FROM
(SELECT
SUM(AMOUNT) AS WM
FROM
order
WHERE
ORDER_TYPE = 'MY_WIN') WIN,
(SELECT
SUM(AMOUNT) AS RM
FROM
order
WHERE

ORDER_TYPE = 'REVOKE_BONUS') REV

我這個人記性不好,雖然每次碰到問題基本都能解決,但是過短時間再碰到同樣的問題,只是記得遇到過,但是忘記了自己是怎麼解決的,還是會從頭分析才行。

現在也慢慢習慣把在部落格上留下自己的筆記了。希望各位程式設計師兄弟姐妹們也能習慣用這個,還能相互翻閱心得,交流經驗