Я выполнил код
SELECT CASE b.ON_LOAN
when 'Y' then
'In Lib'
when 'N' then
(SELECT c.duedate from book_copy a, book b, loan c
where b.isbn = 123456
and a.isbn = b.isbn
and a.book_no = c.book_no)
END AS Availability, a.isbn, a.class_number
FROM book_copy b, book a
where a.isbn = b.isbn and a.isbn = 123456
он возвращает ошибку о том, что подзапрос возвращает более одной строки. Я пытаюсь получить доступ к книге. У книги может быть более одной копии, которая определяется по номеру book_no. Если копия доступна, она должна повторно запустить только «In lib», в противном случае - данные из таблицы ссуд. Например, если у книги есть три копии, 2 из них и 1 в библиотеке, я хочу, чтобы в моем запросе отображались все три копии. Я думаю, мне не хватает внешнего соединения. Не могли бы вы уточнить.
Мои таблицы, которые я использую для этого,
book_copy: book_no, isbn, on_loan
loan: student_id, book_no, duedate,datereturned,loan_id
fk: book_no with book_no in book_copy
book: isbn (pk), title, class
спасибо рк