Dear Richard, Sorry for that :) and thanks for your tips, but it didn't solve my problem. Maybe because my postgresql knowledge limitation. I have tried your suggestion, my view like this : -- View: "vwlapjual" -- DROP VIEW vwlapjual; CREATE OR REPLACE VIEW vwlapjual AS SELECT tblpenjualan.tanggal, tblpenjualan."operator", tblpenjualan.noinvoice, tblpenjualan.bayar, tblpenjualan.bayarvocher, tblpenjualan.jam, tblpenjualan.id, tblpenjualan.jeniscard, tbltransaksi.kodeproduk, tbltransaksi.keluar, tbltransaksi.harga, tbltransaksi.disc1, tblproduk.namabarang, tblproduk.subkat, tblsubkategori.subkategori, tblkategoriproduk.kode, tblkategoriproduk.kategori, tbltransaksi.hargapokok * tbltransaksi.keluar::numeric(2,0) AS modal, tbltransaksi.keluar * tbltransaksi.harga - (tbltransaksi.disc1 / 100::numeric(3,0) * (tbltransaksi.keluar * tbltransaksi.harga))::numeric(10,0) AS jumlah, tbltransaksi.keluar * tbltransaksi.harga - tbltransaksi.disc1 / 100::numeric(3,0) * (tbltransaksi.keluar * tbltransaksi.harga) - (tbltransaksi.hargapokok * tbltransaksi.keluar)::numeric(10,0) AS profit FROM tblpenjualan JOIN tbltransaksi ON tblpenjualan.id = tbltransaksi.jualid LEFT JOIN tblproduk ON tbltransaksi.kodeproduk::text = tblproduk.kode::text LEFT JOIN tblsubkategori ON tblproduk.subkat::text = tblsubkategori.id::text LEFT JOIN tblkategoriproduk ON tblsubkategori.kategoriid::text = tblkategoriproduk.kode::text; ALTER TABLE vwlapjual OWNER TO hpl; and the view result like this : "2008-07-20";"ULY";"01-200708";"Tunai";0.00;"1899-12-30 21:14:47+06:55:25";1;"";"8993417200021";1.00;4200.00;0.00;"ELIPS HAIR VITAMIN ";"121";"VITAMIN RAMBUT";"NF";"Non Food";3960.00;4200.0000;240.000000000000000000000000 Thanks for any suggestion. Regards, Hengky Richard Huxton wrote: Hengky Lie wrote:Dear friends,Hello. Quick tip - don't reply to another message when starting a new thread, people will assume it's part of the old thread.[snip most of query]/ 100::numeric *Food";3960.0000;*4200.000000000000000000000000*;*240.000000000000000000000000*Why the calculation result has so many decimals ?Because you've cast 100 to numeric, rather than numeric(10,2) or whatever. This means you get the full accuracy on the calculation - it won't ever trim a numeric (that's the whole reason to have the type). |
- [SQL] DIfference between max() and greatest() ? Ruben Gouveia
- Re: [SQL] DIfference between max() and greatest() ? Bart Degryse
- Re: [SQL] DIfference between max() and greatest(... Ruben Gouveia
- Re: [SQL] DIfference between max() and greatest() ? Peter Eisentraut
- [SQL] Pls Hlp: SQL Problem Hengky Lie
- Re: [SQL] Pls Hlp: SQL Problem Richard Huxton
- Re: [SQL] Pls Hlp: SQL Problem Hengky Lie
- Re: [SQL] Pls Hlp: SQL Problem Scott Marlowe
- Re: [SQL] Pls Hlp: SQL Problem Fernando Hevia
- Re: [SQL] Pls Hlp: SQL Problem Scott Marlowe
- Re: [SQL] Pls Hlp: SQL Prob... Fernando Hevia
- Re: [SQL] Pls Hlp: SQL Prob... Scott Marlowe