UNION makes strange duplicates
От | Tomasz Brzezina |
---|---|
Тема | UNION makes strange duplicates |
Дата | |
Msg-id | 4296E6EB.6090806@sam.w3.pl обсуждение исходный текст |
Ответы |
Re: UNION makes strange duplicates
|
Список | pgsql-bugs |
-------------- $psql -V psql (PostgreSQL) 7.4.7 contains support for command-line editing -------------- I have table with two _id (document_id and document_store_id). And I have a view: SELECT document_items.document_store_id AS document_id, document_items.vat_type_id, vat_type_value, sum(document_items.document_item_value) AS document_netto_value FROM document_items JOIN vat_type ON document_items.vat_type_id = vat_type.vat_type_id GROUP BY document_items.document_store_id, document_items.vat_type_id, vat_type_value UNION SELECT document_items.document_id, document_items.vat_type_id, vat_type_value, sum(document_items.document_item_value) AS document_netto_value FROM document_items JOIN vat_type ON document_items.vat_type_id = vat_type.vat_type_id GROUP BY document_items.document_id, document_items.vat_type_id, vat_type_value; each of these two SELECTs almost always produce the same results (because document_store_id almost always is equal to document_id , so the result of VIEW should be exact the same as result of each SELECT. BUT it isn't - example: (SELECT * FROM document_values_by_vat WHERE document_id = '65615') document_id vat_type_id vat_type_value document_netto_value 65615 1 0 0 65615 4 0.07 -12.5327 65615 5 0.22 -7.31148 65615 5 0.22 -7.31148 the expected result is: document_id vat_type_id vat_type_value document_netto_value 65615 1 0 0 65615 4 0.07 -12.5327 65615 5 0.22 -7.31148 the result of first select is: document_id vat_type_id vat_type_value document_netto_value 65615 1 0 0 65615 4 0.07 -12.5327 65615 5 0.22 -7.31148 the result of second select is: document_id vat_type_id vat_type_value document_netto_value 65615 1 0 0 65615 4 0.07 -12.5327 65615 5 0.22 -7.31148 Any ideas? -- T.
В списке pgsql-bugs по дате отправления: