кодесурса
«SQL

Учебник по SQL

script1adsense2code
script1adsense3code

Изучите язык структурированных запросов

Учебник по SQL от w3resource направлен на удовлетворение потребностей новичка в изучении SQL без какого-либо предварительного опыта. Сказав это, это ни в коем случае не поверхностно. Напротив, он предлагает весь материал, необходимый для успешной сборки базы данных и написания SQL-запросов, начиная от одной строки, такой как «SELECT * FROM table_name», и заканчивая довольно нетривиальными, принимая несколько таблиц в учетной записи.
Прежде всего, мы должны сказать вам, что это руководство по SQL придерживается стандарта ANSI SQL: 2003. Это важно, потому что, если вы изучаете что-то столь же важное, как SQL, нет смысла учиться, если вы не знаете, какую версию или стандарт вы изучаете.
Мы старательно добавили как можно больше возможностей при создании этого учебника по SQL . Существует синтаксис, запрос, объяснение запроса и графическое представление, чтобы помочь вам лучше понять концепции. Помимо этого у нас есть сотни упражнений с онлайн-редактором, викторины . Таким образом, вы можете практиковать концепции и запросы, не выходя из браузера.

Содержание:

Вступление

В июне 1970 года доктор Э.Ф. Кодд опубликовал статью «Реляционная модель данных для больших совместно используемых банков данных» в журнале Ассоциации компьютерной техники (ACM). Модель Кодда в настоящее время принята как окончательная модель для систем управления реляционными базами данных (RDBMS).
Используя модель Кодда, IBM Corporation разработала язык структурированного английского языка запросов (SEQUEL) в исследовательском центре Сан-Хосе. Язык сначала назывался SEQUEL, но официальным произношением SQL является ESS QUE ELL.
В 1979 году Oracle представила первую коммерчески доступную реализацию SQL. Позже другие игроки присоединяются к гонке. Сегодня SQL принят в качестве стандартного языка СУБД.

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

Что такое SQL?

SQL означает язык структурированных запросов и является стандартным компьютерным языком ANSI (Американский национальный институт стандартов) для доступа к системам баз данных и управления ими. Он используется для управления данными в системе управления реляционными базами данных, которая хранит данные в форме таблиц, а связь между данными также хранится в форме таблиц. Операторы SQL используются для извлечения и обновления данных в базе данных.
SQL работает с программами баз данных, такими как DB2, MySQL , PostgreSQL , Oracle , SQLite , SQL Server, Sybase, MS Access и многими другими. Существует много разных версий языка SQL, но для соответствия стандарту ANSI они поддерживают основные ключевые слова, такие как SELECT, UPDATE, DELETE, INSERT, WHERE и другие. На следующем рисунке показано взаимодействие с RDBMS с использованием SQL.

«общения

История SQL

Вот мудрая история развития года:

  • 1970 EF Codd публикует определение реляционной модели
  • 1975 Первоначальная версия SQL Реализовано (Д. Чемберлин)
  • Экспериментальная версия IBM: System R (1977) с пересмотренным SQL
  • Коммерческие версии IBM: SQL / DS и DB2 (начало 1980-х)
  • Oracle представляет коммерческую версию до SQL / DS IBM
  • INGRES 1981 и 85
  • ShareBase 1982 и 86
  • Общие данные (1984)
  • Sybase (1986)
  • к 1992 году более 100 продуктов SQL

Стандартные редакции SQL

  • SEQUEL / Оригинальный SQL - 1974
  • SQL / 86 - Ратификация и принятие формального стандарта SQL ANSI (Американский национальный институт стандартов) и ISO (Международная организация стандартов).
  • SQL / 92 - основная редакция (ISO 9075), начальный уровень SQL-92 принят как FIPS 127-2.
  • SQL / 99 - добавлено сопоставление регулярных выражений, рекурсивные запросы (например, транзитивное замыкание), триггеры, поддержка процедурных операторов и операторов управления потоком, нескалярные типы и некоторые объектно-ориентированные функции (например, структурированные типы).
  • SQL / 2003 - введены функции, связанные с XML (SQL / XML), оконные функции, автогенерация.
  • SQL / 2006 - много поддержки XML для XQuery, стандарта интерфейса XML-SQL.
  • SQL / 2008 - добавляет триггеры INSTEAD OF, оператор TRUNCATE.

Конструкции SQL

Вот список ключевых элементов SQL вместе с кратким описанием:

  • Запросы: извлекает данные по некоторым критериям.
  • Операторы: управляет транзакциями, потоком программ, соединениями, сеансами или диагностикой.
  • Статьи: Компоненты запросов и операторов.
  • Выражения: комбинация символов и операторов и ключевой части операторов SQL.
  • Предикаты: Определяет условия.

Некоторые ключевые термины SQL 2003

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

  • Манипуляция данных: Data Manipulation Language (DML) является подмножеством SQL , который используется для добавления, обновления и удаления данных.
  • Определение данных: язык определения данных (DDL) используется для управления таблицей и структурой индекса. Операторы CREATE, ALTER, RENAME, DROP и TRUNCATE должны назвать несколько элементов определения данных.
  • Контроль данных. Язык управления данными (DCL) используется для установки разрешений для пользователей и групп пользователей, могут ли они получать доступ к данным и манипулировать ими.
  • Транзакция. Транзакция содержит несколько операторов SQL. После начала транзакции все операторы SQL выполняются, и в конце транзакции в соответствующие таблицы вносятся постоянные изменения.
  • Процедура: Используя хранимую процедуру, создается метод, который содержит исходный код для выполнения повторяющихся задач.

В SQL 2003 операторы сгруппированы в семь категорий, которые называются классами. Смотрите следующую таблицу:

Учебный класс пример
Операторы данных SQL ВЫБРАТЬ, ВСТАВИТЬ, ОБНОВИТЬ, УДАЛИТЬ
Операторы SQL-соединения ПОДКЛЮЧИТЬ, ОТКЛЮЧИТЬ
Операторы схемы SQL ALTER, CREATE, DROP
Операторы управления SQL ЗВОНОК, ВОЗВРАТ
Диагностические операторы SQL ПОЛУЧИТЕ ДИАГНОСТИКУ
Операторы сеанса SQL SET CONSTRAINT
Операторы транзакций SQL COMMIT, ROLLBACK

PL-SQL, TSQL и PL / pgSQL

  • PL / SQL - процедурный язык / язык структурированных запросов (PL / SQL) - это процедурный язык расширения Oracle Corporation для SQL и реляционной базы данных Oracle.
  • TSQL - Transact-SQL (T-SQL) является проприетарным расширением Microsoft и Sybase для SQL.
  • PL / pgSQL - процедурный язык / PostgreSQL (PL / pgSQL) - это процедурный язык программирования, поддерживаемый PostgreSQL.

Управление базой данных и таблицами

команда Описание
CREATE DATABASE имя_базы_данных Создать базу данных
DROP DATABASE имя_базы_данных Удалить базу данных
CREATE TABLE "table_name" ("column_1" "column_1_data_type", "column_2" "column_2_data_type", ...) Создать таблицу в базе данных.
ALTER TABLE table_name ADD column_name column_datatype Добавить столбцы в существующую таблицу.
ALTER TABLE table_name DDROP имя_ столбца column_datatype Удалить столбцы в существующей таблице.
DROP TABLE table_name Удалить таблицу.

Типы данных:

Тип данных Описание
СИМВОЛЫ (п) Строка символов фиксированной длины n.
VARING CHARACTER (n) или
VARCHAR (п)
Строка символов переменной длины, максимальная длина n.
БИНАРНЫЙ (п) Двоичная строка фиксированной длины, максимальная длина n.
БУЛЕВЫ Хранит значения истинности - ИСТИНА или ЛОЖЬ.
BINARY VARYING (n) или
VARBINARY (п)
Двоичная строка переменной длины, максимальная длина n.
Integer (р) Целочисленное число, точность с.
SMALLINT Целочисленная числовая точность 5.
INTEGER Целочисленное число, точность 10.
BIGINT Целочисленное число, точность 19.
ДЕСЯТИЧНЫЙ (p, s) Точное числовое, точность р, шкала с.
ЧИСЛЕННЫЙ (p, s) Точное число,
точность р, шкала с.
(Такой же как DECIMAL).
ПОПЛАВКОВЫЕ (р) Приблизительная числовая точность мантиссы с.
РЕАЛЬНЫЙ Приблизительный числовой
Мантисса точность 7.
FLOAT Приблизительный числовой
Мантисса точность 16.
ДВОЙНАЯ ТОЧНОСТЬ Приблизительный числовой
Мантисса точность 16.
ДАТА
ВРЕМЯ
TIMESTAMP
Состоит из нескольких целочисленных полей, представляющих абсолютный момент времени, в зависимости от подтипа.
ИНТЕРВАЛ Состоит из нескольких целочисленных полей, представляющих период времени, в зависимости от типа интервала.
КОЛЛЕКЦИЯ (Массив, Мультисеть) ARRAY (предлагается в SQL99) является набором длины и упорядочивает коллекцию элементов.
XML Хранит данные XML. Его можно использовать везде, где разрешен тип данных SQL, например, столбец таблицы.

Индекс Манипуляции:

команда Описание
CREATE INDEX index_name ON имя_таблицы (имя_ столбца_1, имя_ столбца_2, ...) Создайте простой индекс.
СОЗДАТЬ УНИКАЛЬНЫЙ ИНДЕКС index_name ON table_name (column_name_1, column_name_2, ...) Создайте уникальный индекс.
DROP INDEX имя_таблицы.index_name Оставьте индекс.

Операторы SQL:

операторы Описание
SQL арифметический оператор Арифметические операторы: сложение (+), вычитание (-), умножение (*) и деление (/). Операторы + и - также могут использоваться в арифметике дат.
Оператор сравнения SQL Оператор сравнения (или реляционный) - это математический символ, который используется для сравнения двух значений.
Оператор присваивания SQL В SQL оператор присваивания (=) присваивает значение переменной или столбцу или полю таблицы.
Битовый оператор SQL Побитовые операторы: & (Побитовое И), | (Побитовое ИЛИ) и ^ (Побитовое Исключающее ИЛИ или XOR). Допустимые типы данных для побитовых операторов: BINARY, BIT, INT, SMALLINT, TINYINT и VARBINARY.
SQL логический оператор Логические операторы - это те, которые являются истинными или ложными. Логические операторы: И, ИЛИ, НЕ, В, МЕЖДУ, ЛЮБЫМ, ВСЕМ, НЕКОТОРЫМ, СУЩЕСТВУЮЩИМ и КАК.
Унарный оператор SQL Унарные операторы SQL выполняют такую операцию, которая содержит только одно выражение любого из типов данных в категории числовых типов данных.

Вставить, обновить и удалить:

команда Описание
INSERT INTO table_name VALUES (значение_1, значение_2, ....)
INSERT INTO имя_таблицы (столбец1, столбец2, ...) ЗНАЧЕНИЯ (значение_1, значение_2, ....)
Вставьте новые строки в таблицу.
ОБНОВЛЕНИЕ table_name SET SET column_name_1 = новое_значение_1, column_name_2 = новое_значение_2 ГДЕ column_name = some_value Обновите один или несколько столбцов в строках.
DELETE FROM table_name WHERE column_name = some_value Удалить строки в таблице.

Выбрать:

команда Описание

ВЫБЕРИТЕ имя столбца (ов) ОТ имени таблицы

Выберите данные из таблицы.
SELECT * FROM table_name Выберите все данные из таблицы.
ВЫБЕРИТЕ DISTINCT имя_столбца (ей) ОТ имени_таблицы Выберите только различные (разные) данные из таблицы.
ВЫБЕРИТЕ имя-столбец (-и) ОТ таблицы-таблицы ГДЕ значение оператора столбца И значение оператора столбца ИЛИ значение оператора столбца И (... ИЛИ ...) ... Выберите только определенные данные из таблицы.
ВЫБЕРИТЕ имя столбца (И) ОТ таблицы имя ГДЕ имя столбца В (значение1, значение2, ...) Оператор IN можно использовать, если вы знаете точное значение, которое вы хотите вернуть хотя бы для одного из столбцов.
ВЫБЕРИТЕ имя столбца (-ов) ОТ таблицы-имени ORDER BY row_1, row_2 DESC, row_3 ASC, ... Выберите данные из таблицы с сортировкой строк.
SELECT column_1, ..., SUM (group_column_name) FROM table_name GROUP BY group_column_name Предложение GROUP BY используется с оператором SELECT, чтобы создать группу строк на основе значений определенного столбца или выражения. Функция SQL AGGREGATE может использоваться для получения сводной информации по каждой группе, которая применяется к отдельной группе.
ВЫБЕРИТЕ имя столбца (-ов) INTO new_table_name FROM source_table_name WHERE запрос Выберите данные из таблицы (S) и вставьте их в другую таблицу.
ВЫБЕРИТЕ имя столбца (-ов) IN external_database_name FROM source_table_name WHERE запрос Выберите данные из таблицы (S) и вставьте их в другую базу данных.

Функции:

Функции SQL Описание
Агрегатная функция Эта функция может создавать одно значение для всей группы или таблицы. Некоторые агрегатные функции -

  • Функция SQL Count
  • Функция SQL суммы
  • Функция SQL Avg
  • Функция SQL Max
  • Функция SQL Min
Арифметическая функция Математическая функция выполняет математическую операцию, обычно основанную на входных значениях, которые предоставляются в качестве аргументов, и возвращает числовое значение в качестве результата операции.
Некоторые арифметические функции -

  • абс ()
  • CEIL ()
  • этаж()
  • ехр ()
  • п ()
  • мод ()
  • мощность()
  • SQRT ()
Функция персонажа Символьная или строковая функция - это функция, которая принимает один или несколько символов или чисел в качестве параметров и возвращает символьное значение. Некоторые функции персонажа -

  • ниже ()
  • Верхняя ()
  • отделка()
  • переведите()

Соединения:

название Описание
SQL EQUI JOIN SQL EQUI JOIN - это простое соединение SQL, использующее знак равенства (=) в качестве оператора сравнения для условия. Он имеет два типа - внешнее соединение SQL и внутреннее соединение SQL.
SQL INNER JOIN возвращает все строки из таблиц, где запись ключа одной таблицы равна записи ключа другой таблицы.
SQL OUTER JOIN возвращает все строки из одной таблицы и только те строки из вторичной таблицы, для которых выполняется условие соединения, т.е. столбцы в обеих таблицах равны.
SQL NON EQUI JOIN SQL NON EQUI JOIN - это объединение, использующее оператор сравнения, отличный от знака равенства, например>, <,> =, <= с условием.

Союз:

команда Описание
SQL_Statement_1 UNION SQL_Statement_2 Выберите все различные значения из SQL_Statement_1 и SQL_Statement_2
SQL_Statement_1 UNION ALL SQL_Statement_2 Выберите все значения из SQL_Statement_1 и SQL_Statement_2

Посмотреть:

команда Описание
СОЗДАТЬ ПРОСМОТР view_name AS ВЫБРАТЬ имя столбца (-ов) ОТ table_name WHERE условие Создайте виртуальную таблицу на основе результирующего набора оператора SELECT.

Цели обучения

Учебник по SQL для w3resource - это всеобъемлющий учебник по изучению SQL. Мы следовали стандарту ANSI SQL: 2003. В этом руководстве приведены сотни примеров. Выходные данные показаны с Oracle 10G / MySQL. Часто результаты сопровождаются наглядным представлением и объяснением для лучшего понимания. Вы вряд ли найдете учебник по независимому от поставщика SQL, который подробно описывает SQL. Ниже приведен список функций, которые мы включили в наши учебники:

  • Простое, но подробное описание.
  • Синтаксис SQL.
  • Описание параметров, используемых в команде SQL.
  • Пример таблицы с данными.
  • Команда SQL
  • Объяснение команды SQL.
  • Вывод команды SQL.
  • Модель базы данных.
  • Онлайн практика.

Резюме

  • SQL расшифровывается как язык структурированных запросов.
  • SQL легко выучить.
  • SQL - это стандартный компьютерный язык ANSI.
  • SQL позволяет нам получить доступ к базе данных.
  • SQL используется для доступа к данным в различных базах данных, таких как Oracle, Sybase, Microsoft SQL Server, DB2, Access, MySQL, PostgreSQL и других системах баз данных, и управления ими.
  • SQL выполняет запросы к базе данных.
  • SQL может вставлять новые записи в базу данных.
  • SQL может обновлять записи в базе данных.
  • SQL может удалять записи из базы данных.

Упражнения по SQL

Хотите улучшить вышеуказанную статью? Вносите свои заметки / комментарии / примеры через Disqus.

Далее: Типы данных SQL

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code