Выберите объект с другим назначением в другом столбце - PullRequest
0 голосов
/ 15 октября 2019

Упростил мою проблему с этой таблицей, я хочу выбрать в PostgreSQL только людей, которые заплатили, у меня есть другие ребята, которые заплатили и не заплатили, я хочу исключить этих людей, спасибо

People Payment Debt/n
John   Pay     $100
John   Paid    $200
Luis   Paid    $150   
Luis   Paid    $300

Ответы [ 2 ]

0 голосов
/ 15 октября 2019

Это может быть другая альтернатива, при условии, что ваша таблица называется "people_payments"

Select People from people_payments 
where Payment='Paid'
and People NOT IN (Select People from people_payments where Payment='Pay') ;
0 голосов
/ 15 октября 2019

Вы можете использовать условное агрегирование здесь:

SELECT People
FROM yourTable
GROUP BY People
HAVING COUNT(*) FILTER(WHERE Payment = 'Pay') = 0;
...