Я пытаюсь выбрать все строки из одной таблицы с указанным c условием. Я использую Oracle PL SQL.
У меня есть две таблицы:
Книги
Страница
- идентификатор
- слова
- book_id
Одна книга может иметь несколько страниц. Я хочу найти все книги, в которых нет ни одной страницы с 50 словами.
Единственное решение, которое я нашел, - создать левое внешнее соединение, а затем отфильтровать по нулям.
Select * from Books b
LEFT OUTER JOIN Page p on b.id = p.book_id and p.words = 50
where p.words is null
Я думаю, что это не очень хорошее решение, но оно работает, знаете ли вы какой-нибудь другой способ сделать это?
Я не хочу получать какую-либо информацию о Pages. Если я создаю нормальное соединение и затем применяю условие, я получаю N строк для Книги и хочу получить только 1 строку для каждой Книги
Спасибо.