-- [SQL-10-3-3-a]
BEGIN;
-- ACC1에서 500원 출금
UPDATE startdbpg.ms_acc t1
SET bal_amt = t1.bal_amt - 500
WHERE t1.acc_no = 'ACC1';
-- ACC2에 500원 입금
UPDATE startdbpg.ms_acc t1
SET bal_amt = t1.bal_amt + 500
WHERE t1.acc_no = 'ACC2';
-- ACC1에 이체 금액의 1%를 캐시백
UPDATE startdbpg.ms_acc t1
SET bal_amt = t1.bal_amt + 500 * 0.01
WHERE t1.acc_no = 'ACC1';
COMMIT;
SQL
복사
-- [SQL-10-3-3-b]
BEGIN;
-- ACC1에서 출금 (500원 - 5원 캐시백 = 495원)
UPDATE startdbpg.ms_acc t1
SET bal_amt = t1.bal_amt - (500 - 500 * 0.01)
WHERE t1.acc_no = 'ACC1';
-- ACC2에 500원 입금
UPDATE startdbpg.ms_acc t1
SET bal_amt = t1.bal_amt + 500
WHERE t1.acc_no = 'ACC2';
COMMIT;
SQL
복사
-- [SQL-10-3-3-c]
BEGIN;
UPDATE startdbpg.tr_ord_vac t1
SET ord_st = 'PKUP'
WHERE t1.ord_no = 100;
UPDATE startdbpg.tr_ord_vac t1
SET pay_tp = 'CARD'
WHERE t1.ord_no = 100;
UPDATE startdbpg.tr_ord_vac t1
SET ord_dtm = NOW()
WHERE t1.ord_no = 100;
COMMIT;
SQL
복사
-- [SQL-10-3-3-d]
BEGIN;
UPDATE startdbpg.tr_ord_vac t1
SET ord_st = 'PKUP'
,pay_tp = 'CARD'
,ord_dtm = NOW()
WHERE t1.ord_no = 200;
COMMIT;
SQL
복사
