我有一個表:在表格中合併行。 PostgreSQL的
CREATE TABLE sale_tender_t0
(
sten_bill bigint NOT NULL,
sten_paymentform smallint NOT NULL,
sten_tenderamount integer,
sten_changeamount integer,
sten_isfiscal character(1),
sten_accid integer,
sten_id bigserial NOT NULL,
sten_map_user integer,
sten_storeid integer NOT NULL
和一些數據,如:
11246276310734;0;5000;2748;"0";;1913;;1
11246277847093;0;25000;2083;"0";;1914;;1
11246280935156;0;2254;0;"0";;1915;;1
11246281048531;0;2240;100;"0";;1916;;1
11246281345250;0;10000;1360;"0";;1917;;1
sten_bill
- 應該有獨特的數據,但有時會發生數據sten_bill被複制。使用 這個劇本我可以找到複製的數據:
select sten_bill from sale_tender_t0 GROUP by sten_bill
HAVING count(*)>1;
但我需要修復的表,例如:
11246276310734;0;5000;2748;"0";;1913;;1
11246276310734;1;5000;2748;"0";;1913;;1
應該修復,如:
11246276310734;1;10000;5496;"0";;1913;;1
刪除第一列,並更改第二列數據column2.sten_tenderamount + column1.sten_tenderamount
和column2.sten_changeamount + column2.sten_changeamount
您需要某種獨特的標識符A.K.A. '主鍵'爲了區分行。 – 2014-10-17 12:27:07
不相關,但是:對'sten_isfiscal'這樣的標誌使用真正的'boolean'更爲簡潔 – 2014-10-17 12:38:41