В данном курсе статей вы сможете познакомиться с основными операторами языка SQL, но не будет рассказано про устройство баз данных в целом, что позволит пользоваться данным курсом как справочником и не нагромождать лишними объяснениями, которые и так всем известны. Если же вы совершенно незнакомы с базами данных, но решили начать их изучать, то выберите базу данных с которой хотите начать работу и там прочтите всю общую информацию по ней. Язык SQL является стандартом для многих баз данных и позволяет производить в ней различные операции. Самым популярным является оператор SELECT. Он возвращает набор данных. Самый просто его синтаксис может иметь такой вид:
1
|
SELECT список полей FROM название таблиц(ы)
|
Для обозначения всех полей в таблице используют *. В промышленном программировании такой синтаксис практически не применяется, потому что идет расход времени работы базы данных на извлечения списка полей из системных таблиц.
1
|
SELECT * FROM название таблиц(ы)
|
Практически во всех примерах на сайте cybern.ru, где есть работа с базой данных для наглядности применяется таблица Student, которая содержит три поля:
- int ID
- nvarchar(50) Name
- int Age
Для наглядности в этом курсе я тоже буду использовать ее. Поэтому вызов оператора SELECT можно переписать следующим образом:
1
|
SELECT ID, Name, Age FROM Student
|
Так как можно выбрать разные сочетания столбцов, которые можно вывести из таблицы, то информация, которую вы получаете может стать не уникальной, т.е если мы будем выводить только возраст студентов, то скорей всего он у нас будет часто повторяться. Для того, чтобы этого избежать можно использовать DISTINCT, который гарантирует уникальность возвращаемых записей.
1
|
SELECT DISTINCT Age FROM Student
|
Кроме DISTINCT можно использовать ключевое слово ALL, которое применяется по умолчанию.
Для сортировки элементов применяется ORDER BY. По умолчанию он сортирует элементы по возрастанию, для того чтобы сортировать их по убыванию необходимо использовать DESC. Для того, чтобы отсортировать записи в таблице Student сначала по возрасту по возрастанию, а потом по ID по убыванию можно использовать следующий код:
1
|
SELECT * FROM Student ORDER BY Age, ID DESC
|
Для того, чтобы выбрать записи, которые соответствуют некоторому условию необходимо использовать следующую конструкцию:
1
|
SELECT список полей FROM название таблиц(ы) WHERE условие
|
Для примера выберем тех, студентов возраст которые больше 18 лет.
1
|
SELECT ID, Name, Age FROM Student WHERE AGE>18
|
|