Как выбрать все поля, кроме полей с нечеткими значениями? - PullRequest
0 голосов
/ 13 ноября 2018

У меня есть таблица, которая представляет данные для людей, которые подали заявку. Каждый человек имеет один PERSON_ID, но может иметь несколько APP_ID. Я хочу выбрать все столбцы за исключением APP_ID (поскольку его значения не различаются) для всех отдельных людей в таблице.

Я могу перечислить каждое поле по отдельности как в select, так и в group by

Это работает:

select PERSON_ID, FIRST,LAST,MIDDLE,BIRTHDATE,SEX,EMAIL,PRIMARY_PHONE from 
applications
where first = 'Rob' and last='Robot'
group by PERSON_ID,FIRST,LAST,MIDDLE,BIRTHDATE,SEX,EMAIL,PRIMARY_PHONE

Но есть еще двадцать полей, которые я могу или не могу использовать в любой момент времени

Есть ли какой-нибудь более короткий способ добиться такого выбора, не будучи столь многословным?

1 Ответ

0 голосов
/ 13 ноября 2018

select distinct короче:

select distinct PERSON_ID, FIRST, LAST, MIDDLE, BIRTHDATE, SEX, EMAIL, PRIMARY_PHONE 
from applications
where first = 'Rob' and last = 'Robot';

Но вам все равно придется перечислять столбцы один раз.

Некоторые более современные базы данных поддерживают предложение except, которое позволяет удалять столбцыиз списка подстановочных знаков.Насколько мне известно, Oracle не имеет подобной концепции.

Вы можете написать запрос, чтобы собрать столбцы из системных таблиц.Это может упростить написание запроса и помочь избежать орфографических ошибок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...