SQL запросы. Первая статья про sql, в нашем случае будем разбирать Transact — SQL. Хочется отметить тот факт, что t-sql и mysql по синтаксису почти ничем не отличаются. Сегодня научимся писать запросы к базе данных.
SQL запросы к базе данных
Как внесение новых записей, так и обращение к имеющимся, осуществляется с благодаря использованию запросов, составляемых конструкциями SQL (structured query language) — непроцедурного декларативного языка структурированных запросов. Сложновато не спорю, но давайте попробуем разобраться.
Допустим у нас есть в базе таблица sotrudniki со следующими столбцами:
id, First Name, Second Name, Last Name и Age.
Там есть какие-то записи. Конечно, мы можем воспользоваться возможностями интерфейса MSSQL, но это не всегда то, что необходимо для выборки. Чтобы выбрать записи, нам помогут sql запросы:
1 |
Select * from sotrudniki |
Это запрос позволит нам выбрать все имеющиеся записи из выбранный таблицы sotrudniki. Но это не всегда удобно. Давайте улучшим наш запрос и выберем только тех сотрудников, которым больше 25 лет:
1 2 |
Select * from sotrudniki where Age > 25 |
Обратите внимание, что мы написали фильтр для нашего sql запроса: «where Age > 25». Соответственно в выборку после выполнения запроса попадут только те записи сотрудников, которым больше 25 лет.
Следующим шагом, давайте разберем, как нам оставлять в выборке, только нужные нам данные. Например, для составления отчета, выберем только Фамилию и Имя сотрудника. Они хранятся в столбцах First Name и Second Name. Основываясь на этой информации, давайте модернизируем наш запрос:
1 2 3 |
Select FirstName, SecondName from sotrudniki where Age > 25 |
Отлично, теперь в выборку попадут только Фамилии и Имена сотрудников, которым больше 25 лет.
При такой выборке названия столбцов остаются стандартными: id, FirstName, SecondName, LastName, Age.
Для переименования столбцов можно придумать алиас. Алиас — это короткое и удобное имя, которое вы можете назначить любому из столбцов. Давайте изменим наш запрос таким образом, чтобы отображался еще и возраст. Так же применим к каждому из столбцов алиас:
1 2 3 |
Select FirstName as "Фамилия", SecondName as "Имя", Age as "Возраст" from sotrudniki where Age > 25 |
В результате выполнения запроса в выборку попадут следующие данные:
- Фамилия
- Имя
- Возраст
Плюс ко всему эта выборка будет сформирована в соответствии с установленным фильтром. То есть попадут только те Фамилии и Имена, у которых в столбце Возраст значения будет больше 25.
Допустим это нас не устраивает и нужно, чтобы в выборке были только Фамилия и Имена сотрудников, у которых возраст равен 25. Модернизируем наш запрос:
1 2 3 |
Select FirstName as "Фамилия", SecondName as "Имя", Age as "Возраст" from sotrudniki where Age = 25 |
Но и так нашего бухгалтера не устраивает отчет… Бухгалтер желает, чтобы наши sql запросы возвращали список, где содержатся сотрудники с возрастом 25 лет и выше! А еще вы забыли Отчество! Хорошо, давайте улучшим наш запрос в соответствии с новыми требованиями:
1 2 3 |
Select FirstName as "Фамилия", SecondName as "Имя", LastName as "Отчество", Age as "Возраст" from sotrudniki where Age = 25 |
Ну все, теперь бухгалтер доволен выборкой. На выходе получается 4 столбца: Фамилия, Имя, Отчество и Возраст.
Таблицы в базе данных является объектом. Иногда возникают ситуации, когда необходимо сформировать запрос с названием базы данных, выглядеть sql запросы будут так:
1 2 3 |
select * from database_name.dbo.table_name select * from [database_name].[dbo].[table_name] select * from [database_name].[table_name] |
Третья конструкция может не работать в тех случаях, если вы обращаетесь с другой базы данных. Тогда необходимо использовать конструкция на строке 2.
Итог:
SQL запросы очень просты в освоении. В них нет ничего сложного и для того, чтобы понять как их использовать при работе с базой данных, достаточно поупражняться в простых запросах. У нас на этом все. Подписывайтесь на нашу группу в ВК и ютубчик!