Синтаксис SQL запроса

Одна из основных функций SQL — получение данных из СУБД. Для построения всевозможных запросов к базе данных используется оператор SELECT. Он позволяет выполнять сложные проверки и обработку данных.

Общая структура запроса

SELECT [DISTINCT | ALL] поля_таблиц 
FROM список_таблиц 
[WHERE условия_на_ограничения_строк]
[GROUP BY условия_группировки]
[HAVING условия_на_ограничения_строк_после_группировки]
[ORDER BY порядок_сортировки [ASC | DESC]]
[LIMIT ограничение_количества_записей]

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

Параметры оператора

  • DISTINCT используется для исключения повторяющихся строк из результата
    ALL (по умолчанию) используется для получения всех данных, в том числе и повторений
  • FROM перечисляет используемые в запросе таблицы из базы данных
  • WHERE — это условный оператор, который используется для ограничения строк по какому-либо условию
  • GROUP BY используется для группировки строк
  • HAVING применяется после группировки строк для фильтрации по значениям агрегатных функций
  • ORDER BY используется для сортировки. У него есть два параметра:
    • ASC (по умолчанию) используется для сортировки по возрастанию
    • DESC — по убыванию
  • LIMIT используется для ограничения количества строк для вывода

SQL-псевдонимы

Псевдонимы используются для представления столбцов или таблиц с именем отличным от оригинального. Это может быть полезно для улучшения читабельности имён и создания более короткого наименования столбца или таблицы.

Например, если в вашей таблице есть столбец good_type_id, вы можете переименовать его просто в id, для того, чтобы сделать его более коротким и удобным в использовании в будущем.

Для создания псевдонимов используется оператор AS:

SELECT good_type_id AS id FROM GoodTypes;

Порядок выполнения инструкций

Следующие действия демонстрируют логический порядок обработки инструкции SELECT. Этот порядок определяет, когда объекты, определенные в одном шаге, становятся доступными для предложений в последующих шагах.

Например, в предложении WHERE не доступны псевдонимы столбцов, определяемых в предложении SELECT, потому что, согласно списку, оно выполняется до SELECT.

  • FROM
  • WHERE
  • GROUP BY
  • HAVING
  • SELECT
  • DISTINCT
  • ORDER BY

Фактическое выполнение инструкций определяется СУБД и порядок из этого списка может значительно отличаться.

Примеры использования

Вы можете выводить любые строки и числа вместо столбцов:

SELECT "Hello world", 1;

Для того, чтобы вывести все данные из таблицы Company, вы можете использовать символ «*», который буквально означает «все столбцы»:

SELECT * FROM Company;

Вы можете вывести любой столбец, определённый в таблице, например, town_to из таблицы Trip:

SELECT town_to FROM Trip;

Также вы можете вывести несколько столбцов. Для этого их нужно перечислить через запятую:

SELECT member_name, status FROM FamilyMembers;

Иногда возникают ситуации, в которых нужно получить только уникальные записи. Для этого вы можете использовать DISTINCT. Например, выведем список городов без повторений, в которые летали самолеты:

SELECT DISTINCT town_to FROM Trip;

Параметризованные запросы — Visual Database Tools

Twitter LinkedIn Facebook Адрес электронной почты

  • Статья
  • Чтение занимает 2 мин

Область применения: SQL Server (все поддерживаемые версии)

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

title_ids , записанные одним автором, можно выполнять один запрос для каждого поиска, меняя только идентификатор автора.

Чтобы создать запрос, который в разное время может иметь разные значения, используются параметры запроса. Параметр — это заполнитель для значения, которое предоставляется при запуске запроса. Инструкция SQL с параметром может выглядеть следующим образом, где «?» представляет параметр для идентификатора автора:

SELECT title_id  
FROM titleauthor  
WHERE (au_id = ?)  

Где можно использовать параметры

Параметры можно использовать как метки-заполнители для литеральных значений — текстовых или числовых. Наиболее часто параметры используются в качестве меток-заполнителей в условиях поиска отдельных строк или групп строк (то есть в предложениях WHERE и HAVING инструкций SQL).

Параметр можно использовать в качестве меток-заполнителей в выражениях. Например можно вычислять цены со скидками, предоставляя различное значение скидки при каждом запуске запроса. Для этого нужно указать следующее выражение:

(price * ?)  

Именованные и неименованные параметры

Можно задать два типа параметров: неименованные и именованные. Неименованный параметр — это восклицательный знак, который можно подставлять в любое место запроса, в котором нужно запросить соответствующее литеральное значение. Например, если неименованный параметр используется для поиска идентификатора автора в таблице

titleauthor , то полученная в результате инструкция на панели SQL может выглядеть следующим образом:

SELECT title_id  
FROM titleauthor  
WHERE (au_id = ?)  

При выполнении запроса в конструкторе запросов и представленийв диалоговом окне Параметры запроса появляется «?» в качестве имени параметра.

Можно также присвоить имя параметру. Именованные параметры особенно полезны, если в запросе имеется несколько параметров. Например, если именованный параметр используется для поиска имени и фамилии автора в таблице

authors , то полученная в результате инструкция на панели «SQL» может выглядеть следующим образом:

SELECT au_id  
FROM authors  
WHERE au_fname = %first name% AND  
      au_lname = %last name%  

Совет

Перед тем как создать запрос с именованным параметром, необходимо определить символы префикса и суффикса.

При выполнении запроса в конструкторе запросов и представлений в диалоговом окне Параметры запроса появляется список именованных параметров.

См. также:

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

Разделы по конструированию запросов и представлений (визуальные инструменты для баз данных)

SQL Tutorial

❮ Главная Далее ❯


Примеры в каждой главе

С помощью нашего онлайн-редактора SQL вы можете редактировать операторы SQL и нажимать кнопку для просмотра результата.

Пример

SELECT * FROM Customers;

Попробуйте сами »

Нажмите кнопку «Попробуйте сами», чтобы увидеть, как это работает.


Упражнения SQL

Проверьте себя с помощью упражнений

Упражнение:

Вставьте отсутствующий оператор, чтобы получить все столбцы из Клиенты табл.

 * ОТ клиентов;
 

Начать упражнение



Примеры SQL

Учитесь на примерах! Этот учебник дополняет все объяснения поясняющими примерами.

Просмотреть все примеры SQL


Викторина по SQL

Проверьте свои навыки SQL в W3Schools!

Начать тест SQL!


Мое обучение

Отслеживайте свои успехи с помощью бесплатной программы «Мое обучение» здесь, в W3Schools.

Войдите в свою учетную запись и начните зарабатывать очки!

Это дополнительная функция. Вы можете учиться в W3Schools без использования My Learning.



Ссылки SQL

AT W3Schools Вы найдете полную ссылку для ключевых слов и функции:

Ссылка на ключевое слово SQL

Функции MySQL

Функции SQLSERVER

Функции доступа

SQL Quick


MS DATIS

SQL QUICK


MS DATIS

SQL QUICK


SQLIN

Типы данных и диапазоны для Microsoft Access, MySQL и SQL Server.

Типы данных SQL


Начните свою карьеру

Получите сертификат, пройдя курс

Получите сертификат

w3schoolsCERTIFIED.2022

❮ Главная Далее ❯


НОВИНКА

Мы только что запустили
Видео W3Schools

Узнать

ВЫБОР ЦВЕТА
КОД ИГРЫ

Играть в игру




Top Tutorials
Учебное пособие по HTML
Учебное пособие по CSS
Учебное пособие по JavaScript
Учебное пособие
Учебник по SQL
Учебник по Python
Учебник по W3.CSS
Учебник по Bootstrap
Учебник по PHP
Учебник по Java
Учебник по C++
Учебник по jQuery

Лучшие ссылки
HTML Reference
CSS Reference
JavaScript Reference
SQL Reference
Python Reference
W3.CSS Reference
Bootstrap Reference
PHP Reference
HTML Colors
Java Reference
Angular Reference
jQuery Reference

лучших примеров
Примеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3. CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery

FORUM | О

W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности.

Copyright 1999-2022 Refsnes Data. Все права защищены.
W3Schools работает на основе W3.CSS.

Синтаксис SQL

❮ Предыдущий Далее ❯


Таблицы базы данных

База данных чаще всего содержит одну или несколько таблиц. Каждая таблица идентифицируется по имени (например, «Клиенты» или «Заказы»). Таблицы содержат записи (строки) с данные.

В этом руководстве мы будем использовать хорошо известную базу данных Northwind (входит в состав MS Access и MS SQL Server).

Ниже представлена ​​выборка из таблицы «Клиенты»:

CustomerID ИмяКлиента Контактное имя Адрес Город Почтовый индекс Страна
1 Альфред Футтеркисте Мария Андерс ул. Обере 57
Берлин
12209 Германия
2 Ана Трухильо Emparedados y helados Ана Трухильо Авда. Конститусьон 2222 Мексика Д.Ф. 05021 Мексика
3 Антонио Морено Такерия Антонио Морено Матадерос 2312 Мексика Д.Ф. 05023 Мексика
4 Вокруг рога Томас Харди Ганноверская площадь, 120 Лондон ВА1 1ДП Великобритания
5 Берглундс snabbköp Кристина Берглунд Бергувсвеген 8 Лулео С-958 22 Швеция

Таблица выше содержит пять записей (по одной для каждого клиента) и семь столбцов. (CustomerID, CustomerName, ContactName, Address, City, PostalCode и Country).


Операторы SQL

Большинство действий, которые необходимо выполнить с базой данных, выполняются с помощью SQL заявления.

Следующая инструкция SQL выбирает все записи в таблице «Клиенты»:

Пример

SELECT * FROM Customers;

Попробуйте сами »

В этом уроке мы научим вас всем различным операторам SQL.



Помните, что…

  • Ключевые слова SQL НЕ чувствительны к регистру: выберите то же, что и ВЫБЕРИТЕ

В этом руководстве мы будем писать все ключевые слова SQL в верхнем регистре.


Точка с запятой после операторов SQL?

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

Точка с запятой — это стандартный способ разделения каждого оператора SQL в базе данных. системы, которые позволяют выполнять более одного оператора SQL в одном вызове на сервер.

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


Некоторые из наиболее важных команд SQL

  • SELECT — извлекает данные из базы данных
  • ОБНОВЛЕНИЕ — обновляет данные в базе данных
  • DELETE — удаляет данные из базы данных
  • INSERT INTO — вставляет новые данные в базу данных
  • CREATE DATABASE — создает новую базу данных
  • ALTER DATABASE — изменяет базу данных
  • СОЗДАТЬ ТАБЛИЦУ — создает новую таблицу
  • ALTER TABLE — изменяет таблицу
  • DROP TABLE — удаляет таблицу
  • CREATE INDEX — создает индекс (ключ поиска)
  • DROP INDEX — удаляет индекс

❮ Предыдущий Далее ❯


НОВИНКА

Мы только что запустили
Видео W3Schools

Узнать

ВЫБОР ЦВЕТА
КОД ИГРЫ

Играть в игру




Лучшие учебники
Учебник по HTML
Учебник по CSS
Учебник по JavaScript
Учебник How To
Учебник по SQL
Учебник по Python
Учебник по W3. CSS
Учебник по Bootstrap
Учебник по PHP
Учебник по Java
Учебник по C++
Учебник по jQuery

9003 000 Справочник по HTML
Справочник по CSS
Справочник по JavaScript
Справочник по SQL
Справочник по Python
Справочник по W3.CSS
Справочник по Bootstrap
Справочник по PHP
Цвета HTML
Справочник по Java
Справочник по Angular
Справочник по jQuery

Лучшие примеры
Примеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3.CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery

FORUM | О

W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания.