Поиск в БД - MySQL

Узнай цену своей работы

Формулировка задачи:

Имеются 2 таблицы (Структуры прилагаю на скрине). ID связал внешним ключом. Как мне найти в первой таблице авторов у которых есть хоть какие-либо книги во второй таблице? (В таблице book имеются id авторов которым принадлежит эта книга)

Решение задачи: «Поиск в БД»

textual
Листинг программы
select *
    from avt
    where a_id in (
        select avt_id
            from book
            group by avt_id
    )

Объяснение кода листинга программы

  1. Код написан на SQL (Structured Query Language), который используется для работы с реляционными базами данных.
  2. SQL-запрос начинается с ключевого слова SELECT, которое указывает, что мы хотим получить некоторые данные из базы данных.
  3. После SELECT идет *, что означает, что мы хотим получить все столбцы из выбранной таблицы.
  4. FROM avt указывает, что мы хотим получить данные из таблицы с именем avt.
  5. WHERE a_id in (select avt_id from book group by avt_id) - это подзапрос, который используется для фильтрации данных. Он возвращает список уникальных значений avt_id из таблицы book.
  6. Внешний запрос SELECT использует этот список для фильтрации строк в таблице avt, оставляя только те, у которых значение столбца a_id присутствует в списке.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.6 из 5