Язык запросов SQL – Оператор SELECT
В языке запросов sql значительное место занимает оператор select, который имеет наиболее сложную структуру среди других операторов этого языка. В данной статье мы рассмотрим основы этого, очень важного оператора языка sql.
В Интернете множество всевозможных статей, книг, самоучителей по SQL, но все они сложны для человека, который никогда не слышал об SQL, а может и программирование вообще и поэтому для него все эти источники тяжелы для изучения. Здесь я пытаюсь объяснить основу одного оператора не вдаваясь в глубь (именно это затрудняет изучение, что сразу от основы переходят к сложным запросам), поэтому сначала необходимо узнать основу, а потом переходить к более сложному, что и облегчит изучение языка SQL. Данная статья отлично подойдет для начинающих, которые поймут основу и смогут понимать, о чем говориться в тех профессиональных учебниках по изучению SQL, которые вы сможет начать изучать после прочтения этой небольшой статьи.
Начнем с того, что такое язык SQL.
SQL – это язык запросов, который служит для манипуляции (управления) данными в реляционных базах данных. Имеет широкую популярность и поэтому любой уважающий себя IT-к должен знать основы этого языка.
Основой языка sql и является та часть, под которую отводиться оператор select. Данный оператор служит для выборки данных из базы данных. Например, для формирования отчета или просто получения сведений.
Вот самый простой пример использования этого оператора:
Select * From Table
где,
* - показать все данные
From - из таблицы….
Table - название таблицы
Но, как известно, нам бывают, нужны не все данные из таблицы, а иногда некоторые колонки, для этого просто указываем вместо * название колонки, например:
Select price From Table
где, price и есть название колонки.
Примечание! Используем простую таблицу с перечислением моделей компов их ценой и названием.
Идем дальше, здесь, как и в любом языке программирования есть возможность выполнения условия, т.е. Вам нужно отображать не всю колонку, а только некоторые ее ячейки, которые отвечают вашему условию, например:
Select price From Table
Where price > 100
где, Where и есть условие, т.е. мы отображаем только те ячейки, которые соответствуют нашему условию (цена больше 100)
Примечание! Существует несколько простых условий сравнения:
‘>’ – больше чего-либо
‘<’ – меньше чего-нибудь
‘=’ – равно
‘< >’ – например, PC ‘b’ отобразить не сломанный комп (где под b подразумевают сломанные компы)
‘>=’ – больше или равно
‘<=’ – меньше или равно
Также можно указывать условие попадает или не попадает значение в определенный промежуток, например:
Select price
From table
WHERE price BETWEEN 400 AND 600
где, указывается, что цена должна быть в промежутке от 400 до 600
Также можно указать предикат IN т.е. он определяет, будет ли значение проверяемого выражения обнаружено в наборе значений, например:
Select price
From table
WHERE price IN (400, 600)
т.е. мы выведем только цену со стоимостью 400 и 600
Но если нам нужно чтобы ваша цена не повторялась (нам нужна только уникальная цена) нам необходимо указать ключевое слово DISTINCT, например:
Select DISTINCT price
From Table
Where price > 100
Если вам нужно указать несколько колонок, то просто перечисляйте их через запятую после оператора select, например:
Select price, name, model
From Table
где, price, name, model и будут ваши колонки из таблицы Table.
Примечание! Если вы заметили язык sql не чувствителен к регистру и к тому на какой строке писать выражение, т.е. можно в одной строке и можно в нескольких, но это зависит от того как для вас будет наиболее читабельным. Например, следующие два запроса абсолютно одинаковые:
Select price From Table
и
Select price
From Table
Очень часто необходимо отсортировать колонки по определенному типу или колонке в целом. Для этого нужно в конце запроса (всегда только в конце! Такой синтаксис) указать ORDER BY при этом можно указывать как название полей, так и их порядковые позиции в предложение select. Допустим вам необходимо отсортировать от большего к меньшему, вам нужно написать вот так:
Select price
From Table
Order BY price DESC
Этот пример сортировки по убыванию, но можно сортировать и по возрастанию, вместо DESC пишем ASC, но обычно его не пишут, так как сортировка по возрастанию является по умолчанию.
Очень полезные так называемые итоговые функции:
COUNT - количество значений в указанном столбце
SUM - сумма значений в указанном столбце
AVG - среднее значение в указанном столбце
MIN - минимальное значение в указанном столбце
MAX - максимальное значение в указанном столбце
Например, нам нужно получить среднею цену компа, максимальную и минимальную, запрос будет таким:
Select AVG (price), MAX (price), MIN (price)
From table
Можно проводить группировку значений по колонкам, например нам, нужно посчитать среднею цену для каждой модели компьютера, запрос такой:
Select model, AVG (price) AS ‘средняя цена’
From table
Group By model
Если вы заметили я, здесь применил присвоение «псевдонима» для более удобного восприятия результатов этого запроса, т.е. после колонки пишите AS и название, которое вы хотите чтобы отображалась в результатах.
Также как и при использование условий в отдельных колонках также можно указывать условие на целую группу, с помощью функции HAVING. Например, нам нужно определить максимальную цену компа, сгруппированную по моделям этих компов, но максимальная цена, которых меньше 500:
Select model, Max (price)
From table
Group By model
Having Max (price) < 500
В этом случае наш запрос нам выдаст сгруппированные по моделям компьютеры, максимальная цена которых меньше 500.
Частое явление, что в строкам таблицы отсутствует значение (т.е. пустое) и оно называется NULL, и иногда бывает необходимо вывести все строки, для которых отсутствует значение, например у нас для какого-нибудь компьютера еще не назначена цена:
Select *
From table
Where price is NULL
что и будет означать поиск всех строк, в которых отсутствует значение.
Сейчас приведем общую структуру оператора Select:
SELECT [DISTINCT] <Список полей> или *
[FROM <Список таблиц>]
[WHERE <Условие отбора>]
[GROUP BY <Список полей для группирования> [ASC | DESC], ...]
[HAVING <Условие группирования>]
[ORDER BY <Список полей для сортировки> [ASC | DESC], ...]
Это общий синтаксис оператора Select, и его нарушение приведет к синтаксической ошибке.
На сегодня пока все, мы рассмотрели с вами самую главную основу оператора Select языка SQL. Теперь вы хотя бы имеете представление об этом операторе и можете переходить уже к углубленному изучению SQL. Удачи!
Последние добавленные статьи
Предыдущая
Следующая
Как узнать свой номер ICQНе каждый человек способен запомнить ряд цифр, абсолютно не связанных между собой логически. Поэтому часто случается так, что номер ICQ, состоящий из длинного ряда цифр, теряется и забывается. Однако существуют...
Как спрятать файлы на компьютереЧасто появляется необходимость скрыть некоторые файлы, чтобы они не были случайно обнаружены другими пользователями компьютера, либо открыты. Особенно это касается важной и конфиденциальной информации, которую необходимо защитить от просмотров и...
Программирование браузерных игрБраузерные игры создаются на основе сетевых языков программирования, таких как PHP, Flash или Java. Те не менее, на стороне сервера могут использоваться любые другие языки программирования, обеспечивающие обработку данных.
Текст для сайта от профессионалов как за…Наполнение сайта уникальным контентом – не слишком простая задача, как может показаться на первый взгляд. Зачастую владельцы сайтов не уделяют должного внимания своим текстам, особенно при создании сайта. Мотивируют это...
Популярные языки веб-программированияСовременные сайты совсем не похожи на те статичные странички, которые были популярны еще лет десять назад. Язык HTML, называемый гипертекстовым, очень удобный и простой. К тому же, он довольно понятный,...
|
Последние добавленные файлы
Предыдущая
Следующая
Postgresql – Документация для изучения э…Документации для изучения postgresql в Интернете достаточно мало, особенно книг, подробных инструкций, да и простого руководства пользователя найти трудно, и для того чтобы облегчить ваш поиск необходимой информации по этой...
Все о реестре Windows – Книги для изучен…Надоело искать помощь в интернете по настройкам реестра? Хотите сами знать все о реестре операционной системы Windows? то Вам обязательно необходимо прочитать эти книги.
Linux Для начинающих и профессионалов (К…В Интернете нет так много материала по Linux, он есть, но необходимо затратить не мало усилий, чтобы найти то, что вам нужно, поэтому я решил сгруппировать весь необходимый материал для...
Сборник книг по изучению Active Director…Здесь собран материал, для того чтобы вы смогли освоить такую технологию как Active Directory для Windows Server 2003.
Сборник книг по изучению маршрутизаторов…Отличный сборник книг для освоения таких маршрутизаторов как Cisco. Материал подходит как для начинающих, так и для профессионалов.
|
-
Softvt807 Очков -
admin672 Очков -
Author_ST253 Очков -
FasT209 Очков -
Lion182 Очков