Как уменьшить количество строк таблицы на основе другой таблицы в Oracle SQL без объединения? - PullRequest
0 голосов
/ 26 марта 2020

У меня есть объект в базе данных, который имеет миллионы учетных записей. Скажем, есть еще один объект, который имеет учетные записи, которые мне нужны для создания моего отчета. Я хочу написать запрос, который выбирает все из первого объекта, но только для учетных записей, которые находятся во втором объекте. Если я пишу

select * from first f inner join second s on f.ID=s.ID

, я получаю столбцы во втором объекте, который мне не нужен, потому что в обоих есть поля с одинаковыми именами, и Tableau выдает ошибку при подключении к нему. Может ли кто-нибудь помочь мне с этим?

Thakns

1 Ответ

1 голос
/ 26 марта 2020

Я хочу написать запрос, который выбирает все из первого объекта, но только для учетных записей, которые находятся во втором объекте.

У вас есть эти ...

-- Object with mIlLiOns of accounts
millions

-- Object with accounts for your report
accounts_for_report

Я бы начал с чего-то вроде ...

SELECT mil.*
FROM millions mil INNER JOIN accounts_for_report afr
ON mil.ID = afr.ID;

Если вы хотите выполнить sh без объединения (как намекает тема), вы можете сделать это .. .

SELECT *
  FROM millions mil
 WHERE EXISTS (
         SELECT * accounts_for_report WHERE ID = mil.ID
 );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...