आप संचयी राशि रखने के लिए एक चर का उपयोग कर सकते हैं:
SELECT ID,
@s := IF(ACTION_TYPE='ADD', @s + ACTION_QTY, @s - ACTION_QTY) AS BALANCE,
ACTION_QTY,
ACTION_TYPE
FROM tableA
CROSS JOIN (SELECT @s := 0) AS var
ORDER BY ID
उपरोक्त क्वेरी मानती है कि ACTION_TYPE
. के केवल दो प्रकार हैं मान, अर्थात् 'ADD'
और 'DEDUCT'
. इसलिए, यदि ACTION_TYPE
'ADD'
. के बराबर नहीं है , तो यह 'DEDUCT'
. के बराबर है ।