Создание вложенных запросов (визуальные инструменты для баз данных)

Область применения: SQL Server

Результаты одного запроса можно использовать в качестве входных данных для другого. Результаты вложенного запроса можно использовать в качестве выражения, которое использует функцию IN( ), оператор EXISTS или предложение FROM.

Вы можете создать вложенный запрос, введя его непосредственно в область SQL или скопируйв запрос и вставив его в другой.

Определение вложенного запроса на панели SQL

  1. Создайте первичный запрос.

  2. В области SQL выберите инструкцию SQL, а затем используйте Копировать для перемещения запроса в буфер обмена.

  3. Запустите новый запрос и затем используйте Вставить, чтобы переместить первый запрос в клаузу WHERE или FROM нового запроса.

    Например, представьте, что у вас есть две таблицы, products и suppliers, и вы хотите создать запрос, показывающий все продукты для поставщиков в Швеции. Создайте первый запрос в таблице suppliers, чтобы найти всех шведских поставщиков:

    SELECT supplier_id
    FROM supplier
    WHERE (country = 'Sweden');
    

    Используйте команду «Копировать», чтобы переместить этот запрос в буфер обмена. Создайте второй запрос с помощью таблицы products, в которой перечислены необходимые сведения о продуктах:

    SELECT product_id,
           supplier_id,
           product_name
    FROM products;
    

    В панели SQL добавьте WHERE условие во второй запрос, а затем вставьте первый запрос из буфера обмена. Поместите круглые скобки вокруг первого запроса, чтобы конечный результат выглядел следующим образом:

    SELECT product_id,
           supplier_id,
           product_name
    FROM products
    WHERE supplier_id IN (SELECT supplier_id
                          FROM supplier
                          WHERE (country = 'Sweden'));