Re: Function fixing - PostgreSQL 9.2

Поиск
Список
Период
Сортировка
От David G. Johnston
Тема Re: Function fixing - PostgreSQL 9.2
Дата
Msg-id CAKFQuwbNRQK5MX+vAqWY5OV0vZYF8+=qzsRO2_3CS3r=E7u8wQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Function fixing - PostgreSQL 9.2  ("drum.lucas@gmail.com" <drum.lucas@gmail.com>)
Ответы Re: Function fixing - PostgreSQL 9.2  ("drum.lucas@gmail.com" <drum.lucas@gmail.com>)
Список pgsql-general
On Mon, Feb 29, 2016 at 6:14 PM, drum.lucas@gmail.com <drum.lucas@gmail.com> wrote:


On 1 March 2016 at 11:35, David G. Johnston <david.g.johnston@gmail.com> wrote:
On Mon, Feb 29, 2016 at 2:56 PM, drum.lucas@gmail.com <drum.lucas@gmail.com> wrote:

Question:

Payments in a Pending state cannot be invoiced and are excluded from the Invoice Runs section, but they are showing in the count mechanic.

How can I solve this?


​In 9.2 you probably need to convert the count into a conditional sum:

SELECT sum(CASE WHEN <boolean> THEN 1 ELSE 0 END) FROM data;

You can probably do the same with count since it excludes nulls.

SELECT count(NULLIF(invoice_status, 'Pending') FROM invoices;

​9.4 introduced a FILTER clause for Aggregate Expressions that can do this much more cleanly and efficiently.​


David J.


Thank you David...

Can you please show me how it would be with the new changes?


​I barely scanned your original query - just read the description.  I don't have the inclination - especially without a self-contained example - to make changes to it.

David J.
 

В списке pgsql-general по дате отправления:

Предыдущее
От: "drum.lucas@gmail.com"
Дата:
Сообщение: Re: Function fixing - PostgreSQL 9.2
Следующее
От: Rafal Pietrak
Дата:
Сообщение: Re: multiple UNIQUE indices for FK