30512

Синтаксис оператора SELECT. Обзор его подразделов (списка выборки, секций FROM, WHERE, GROUP BY, HAVING, OREDER BY).. Способы упорядочивания итогового набора в секции OREDER BY

Доклад

Математика и математический анализ

SELECT селект оператор DML языка SQL возвращающий набор данных выборку из базы данных удовлетворяющих заданному условию. При формировании запроса SELECT пользователь описывает ожидаемый набор данных: его вид набор столбцов и его содержимое критерий попадания записи в набор группировка значений порядок вывода записей и т. Синтаксис оператора SELECT SELECT column_list FROM tble_nme [WHERE условие] [GROUP BY условие] [HVING условие] [ORDER BY условие] SELECT Ключевое слово которое сообщает базе данных о том что оператор является...

Русский

2013-08-24

23.79 KB

3 чел.

Синтаксис оператора SELECT. Обзор его подразделов (списка выборки, секций FROM, WHERE, GROUP BY, HAVING, OREDER BY).. Способы упорядочивания итогового набора в секции OREDER BY. Модификация данных с использованием Data Manipulation Language (DML). Операторы INSERT, UPDATE, DELETE.

SELECT ("селект") — оператор DML языка SQL, возвращающий набор данных (выборку) из базы данных, удовлетворяющих заданному условию.

В большинстве случаев, выборка осуществляется из одной или нескольких таблиц. В последнем случае говорят об операции слияния (англ. join). В тех СУБД, где реализованы представления и хранимые процедуры, также возможно получение соответствующих наборов данных.

При формировании запроса SELECT пользователь описывает ожидаемый набор данных: его вид (набор столбцов) и его содержимое (критерий попадания записи в набор, группировка значений, порядок вывода записей и т.п.).

Запрос выполняется следующим образом: сначала извлекаются все записи из таблицы, а, затем, для каждой записи набора проверяется её соответствие заданному критерию. Если осуществляется слияние из нескольких таблиц, то сначала составляется произведение таблиц, а уже затем из полученного набора отбираются требуемые записи.

Особую роль играет обработка NULL-значений, когда при слиянии, например, двух таблиц — главной (англ. master) и подчинённой (англ. detail) — имеются или отсутствуют соответствия между записями таблиц, участвующих в слиянии. Для решения этой задачи используются механизмы внутреннего (англ. inner) и внешнего (англ. outer) слияния.

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

Синтаксис оператора SELECT

SELECT column_list

FROM table_name

[WHERE условие]

[GROUP BY условие]

[HAVING условие]

[ORDER BY условие]

SELECT Ключевое слово, которое сообщает базе данных о том, что оператор является запросом. Все запросы начинаются с этого слова, за ним следует пробел.

Column_list Список столбцов таблицы, которые выбираются запросом. Столбцы, не указанные в операторе, не будут включены в результат. Если необходимо вывести данные всех столбцов, можно использовать сокращенную запись. Звездочка (*) означает полный список столбцов.

FROM table_name Ключевое слово, которое должно присутствовать в каждом запросе. После него через пробел указывается имя таблицы, являющейся источником данных.

Код в скобках является не обязательным в операторе SELECT. Он необходим для более точного определения запроса.

Также необходимо сказать, что SQL код является регистронезависимым. Это означает, что запись SELECT можно написать как select. СУБД не отличит эти две записи, однако советуют все операторы SQL писать прописными буквами, чтобы его легко можно было отличить от другого кода.

WHERE— используется для определения, какие строки должны быть выбраны или включены в GROUP BY.

GROUP BY— используется для объединения строк с общими значениями в элементы меньшего набора строк.

HAVING— используется для определения, какие строки после GROUP BY должны быть выбраны.

ORDER BY— используется для определения, какие столбцы используются для сортировки результирующего набора данных.

Способы упорядочивания итогового набора в секции OREDER BY 

Оператор SELECT выводит данные в произвольной последовательности. Для сортировки результата по определенному столбцу, в SQL используется оператор ORDER BY (т.е. упорядочить по….). Этот оператор позволяет изменить порядок вывода данных. ORDER BY упорядочивает результат запроса в соответствии со значениями одного или нескольких столбцов, выбранных в предложении SELECT. При этом для каждого столбца можно задать сортировку по возрастанию – ascending (ASC) (этот параметр используется по умолчанию) или по убыванию – descending (DESC).

Отсортируем результат по столбцу sname. После оператора ORDER BY указываем по какому столбцу сортировать, затем необходимо указать способ сортировки

Примерсортировка по возрастанию:

SELECT * FROM Salespeople ORDER BY sname ASC

Результат:

snum

sname

city

comm

1003

Axelrod

New York

0,1

1004

Motika

London

0,11

1001

Peel

London

0,12

1007

Rifkin

Barcelona

0,15

1002

Serres

San Jose

0,13

Пример – сортировка по убыванию:

SELECT * FROM Salespeople ORDER BY sname DESC

Результат:

snum

sname

city

comm

1002

Serres

San Jose

0,13

1007

Rifkin

Barcelona

0,15

1001

Peel

London

0,12

1004

Motika

London

0,11

1003

Axelrod

New York

0,1


Пример – сортировка по нескольким столбца:

SELECT snumsnamecity FROM Salespeople ORDER BY sname DESCcity DESC

Data Manipulation Language (DML) (язык управления (манипулирования) данными) — это семейство компьютерных языков, используемых в компьютерных программах или пользователями баз данных для получения, вставки, удаления или изменения данных в базах данных.

На текущий момент наиболее популярным языком DML является

Функции языков DML определяются первым словом в предложении (часто называемом запросом), которое почти всегда является глаголом. В случае с SQL эти глаголы — «insert» («вставить»), «update» («обновить»), и «delete» («удалить»).

INSERT — оператор языка SQL, который позволяет добавить строки в таблицу, заполняя их значениями. Значения можно вставлять перечислением с помощью слова values и перечислив их в круглых скобках через запятую или оператором select.

Используя select:

INSERT INTO <название таблицы> SELECT <имя столбца>

UPDATE — оператор языка SQL, позволяющий обновить значения в заданных столбцах таблицы.

UPDATE [top(x)] <объект> 

SET <присваивание1 [, присваивание2, ...]> 

[WHERE <условие>]

[OPTION <хинт1 [, хинт2, ...]>]

  1.  top(x) — команда выполнится только х раз
  2.  <объект> — объект, над которым выполняется действие (таблица или представление)
  3.  set- после ключевого слова должен идти список полей таблицы, которые будут обновлены и непосредственно сами новые значения в виде имя поля="значение"
  4.  <присваивание> — присваивание, которое будет выполняться при каждом выполнении условия <условие>, или для каждой записи, если отсутствует раздел where
  5.  <условие> — условие выполнения команды
  6.  <хинт> — инструкция программе как исполнить запрос

DELETE — в языках, подобных SQL, DML-операция удаления записей из таблицы. Критерий отбора записей для удаления определяется выражением where. В случае, если критерий отбора не определён, выполняется удаление всех записей.

Общий синтаксис команды:

DELETE FROM <Имя Таблицы> WHERE <Условие отбора записей>


 

А также другие работы, которые могут Вас заинтересовать

15230. Аударматану терминдерінің когнитивтік-семантикалық құрылымы 291 KB
  Сонымен бірге лингвистикалық терминдерді қазақ тіл білімінің метатілі мәселелеріне қатысты тезаурустық сипатта қарастырған Е.Қ.Әбдірәсіловтің, терминдердің танымдық сипатын зерттеу нысаны еткен С.Ақаевтың зерттеулері терминология саласын зерттеудің жаңа деңгейін көрсетеді.
15231. ТЕРМИНТАНУДЫҢ ТАРИХЫ ТЕРЕҢДЕ 60 KB
  ТЕРМИНТАНУДЫҢ ТАРИХЫ ТЕРЕҢДЕ Жуырда терминтану саласында өнімді еңбек етіп жүрген белгілі тілтанушы ғалым филология ғылымдарының докторы профессор Шерубай Құрманбайұлының €œАлаш және терминтану€ €œТерминологиялық әдебиеттердің библиографиялық көрсеткіші€ ...
15232. Басқару-ұйымдастырушылық құжаттары 139.5 KB
  Қазақ тіліндегі ресми ісқағаздары Басқару ұйымдастыру өкім шығару қызметіне қатысты құжаттар. Оған төмендегідей құжаттар жатады үкім өкім Жарғы жарлық Ереже хабарлама ...
15233. Ғұрыптық фольклор лексикасы: идиоэтникалық 251.5 KB
  Қазақ тіл білімінде әсіресе соңғы жылдары көбірек көңіл бөліне бастаған антропоцентристік бағыттағы зерттеулердің нәтижесі этностың байырғы тұрмыс-тіршілігінің, қазіргі болмысы мен өткендегі өмір сүру тәжірибесінің, күнкөріс мәдениетінің, өзіндік ежелгі заттық және рухани құндылықтарының түрлі тілдік көріністері тек лексика мен фразеологияда ғана емес, ономасиологияда да
15234. Дискурс 46 KB
  Дискурс Дискурс ұғымы XX ғасырдың 70жылдарынан бастап философияда кеңінен қолданыла бастады. Тұңғыш болып дискурс ұғымын Ю. Хабермас өзінің Коммуникативтік компетенция теориясына дайындық атты еңбегінде қолданған болатын. Содан бері бұл термин батыстық философи...
15235. І.Есенберлиннің Көшпенділер романындағы жылқы атауларының этнолингвистикалық мәні 324 KB
  Еліміз егемендік алып, тіліміз мемлекеттік мәртебеге ие болуына байланысты қоғамда тарихи сана мен ұлттық таным көкжиегі кеңейе бастады. Осыған байланысты ұлттық рухани-мәдени мұраның тарихи маңызын саралап, қайта бағалау мүмкіндігі туып отыр
15236. Етістіктің лексика-грамматикалық сипаты 69 KB
  Етістіктің лексикаграмматикалық сипаты Етістік қазақ тіліндегі сөз таптарының ішіндегі ең күр делілерінің бірі. Оның күрделілігі лексикасемантикалық сипатынан грамматикалық формалары мен категорияларының көптігінен синтаксистік қізметінен айқын көрінеді. Е...
15237. Әбілғазы баһадүр ханның «Түркі шежіресіндегі» араб-парсы сөздерінің қолданылу ерекшелігі 277 KB
  Әбілғазы шығармасының тіл ғылымы үшін, оның ішінде түркітану ғылымы үшін маңызы зор екендігін Г.С.Саблуков өзінің аудармасының кіріспесінде былайша көрсетеді: «Исправно изданный Родословной был бы при скудости литературы на восточно-джагатайском наречии
15238. Әлем тілдерінің топтастырылуы 171.5 KB
  Әлем тілдерінің топтастырылуы Мазмұны 1. Тілдердің генеологиялық туыстық классификациясы. 2. Тілдердің типологиялық классификациясы. 5.1. Тілдердің генеологиялық туыстық классификациясы. Тілдердің генеологиялық ту...