ypercube cevap oldukça muhteşem (Ben hiç böyle bir kukla seçim yoluyla tek bir sorgu içinde değişken bir oluşturma görmedim), işte size kolaylık sağlamak için CREATE TABLE ifadesi.
Google Görsel Arama'daki sekmeli veri resimleri için, bunu bir metin belgesine dönüştürmek üzere https://convertio.co/ocr/ veya https://ocr.space/ adresini kullanabilirsiniz . Sonra OCR sütunları düzgün algılamadıysa ve bir Mac'iniz varsa, dikdörtgen bir seçim yapmak ve sütunları hareket ettirmek için seçenek tuşunu basılı tutarak TextWrangler'ı kullanın . Sequel Pro , TextWrangler gibi SQL editörünün ve Google Dokümanlar gibi bir e-tablonun kombinasyonu, sekmeyle ayrılmış sekmeli verilerle ilgilenmeyi son derece verimli hale getirir.
Tüm bunları bir yorumda yazabilirsem, lütfen bu cevabı iptal etmeyin.
-- DROP TABLE statements;
CREATE TABLE IF NOT EXISTS statements (
id integer NOT NULL AUTO_INCREMENT,
stmnt_date date,
debit integer not null default 0,
credit integer not null default 0,
PRIMARY KEY (id)
);
INSERT INTO statements
(stmnt_date , debit, credit) VALUES
('2014-06-17', 20000, 0 ),
('2014-08-14', 0 , 3000 ),
('2014-07-16', 0 , 3000 ),
('2015-02-01', 3000 , 0 ),
('2014-05-15', 3000 , 0 );
-- this is slightly modified from ypercube's (@b := 0 vs @b := 0.0)
SELECT
s.stmnt_date, s.debit, s.credit,
@b := @b + s.debit - s.credit AS balance
FROM
(SELECT @b := 0) AS dummy
CROSS JOIN
statements AS s
ORDER BY
stmnt_date ASC;
/* result
+------------+-------+--------+---------+
| stmnt_date | debit | credit | balance |
+------------+-------+--------+---------+
| 2014-05-15 | 3000 | 0 | 3000 |
| 2014-06-17 | 20000 | 0 | 23000 |
| 2014-07-16 | 0 | 3000 | 20000 |
| 2014-08-14 | 0 | 3000 | 17000 |
| 2015-02-01 | 3000 | 0 | 20000 |
+------------+-------+--------+---------+
5 rows in set (0.00 sec)
*/