Укажите, что фамилия Имя имеет одну запись с определенным значением

#sql

Вопрос:

В этом коде результаты таковы: В нашем случае я хотел бы знать, в какой строке нет 1 в столбце is_primary_mo, в нашем случае я бы хотел, чтобы столбец «NP», так как у BANTT есть запись с 1.

 last_name First_Name is_primary_mo street_address_1 8712 BANTT 1 Center 1 8712 BANTT 0 Center A 8713 TANNE 0 Center 2 8713 TANNE 0 Center 5  
 select b.last_name, b.first_name, a.is_primary_mo, a.street_address_1  from staff_office_demographics_byprimary_view a inner join staff_view b  on a.staff_id = b.staff_id order by b.last_name, b.last_name  

Комментарии:

1. Можете ли вы привести пример желаемого результата?

Ответ №1:

Ваш точный желаемый результат мне неясен, но я надеюсь, что приведенное ниже поможет вам двигаться в правильном направлении:

Получите имя и фамилию, где есть хотя бы одна запись с is_primary_mo = 1 в staff_office_demographics_byprimary_view:

 select b.last_name, b.first_name from staff_office_demographics_byprimary_view a inner join staff_view b  on a.staff_id = b.staff_id group by b.last_name, b.first_name having SUM(a.is_primary_mo) gt; 0  order by b.last_name, b.last_name  

Получите имя и фамилию, где есть ровно одна запись с is_primary_mo = 1 в staff_office_demographics_byprimary_view:

 select b.last_name, b.first_name from staff_office_demographics_byprimary_view a inner join staff_view b  on a.staff_id = b.staff_id group by b.last_name, b.first_name having SUM(a.is_primary_mo) = 1  order by b.last_name, b.last_name  

Получите имя и фамилию, где нет записи с is_primary_mo = 1 в staff_office_demographics_byprimary_view:

 select b.last_name, b.first_name from staff_office_demographics_byprimary_view a inner join staff_view b  on a.staff_id = b.staff_id group by b.last_name, b.first_name having SUM(a.is_primary_mo) = 0  order by b.last_name, b.last_name