30 примеров SQL-запросов

30 Primerov Sql Zaprosov



Полная форма SQL — язык структурированных запросов. Это очень полезный инструмент для доступа или изменения структуры и данных базы данных. Многим приложениям требуется база данных для постоянного хранения необходимых данных в базе данных в структурированном формате. MySQL, Oracle, SQL Server и т. д. являются популярными базами данных для хранения данных приложения. Они необходимы для изучения основ SQL для доступа или изменения содержимого базы данных. В этом руководстве показано основное использование операторов SQL в базе данных MariaDB с использованием 30 примеров SQL-запросов.

Предпосылки

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

1. Выполните следующие команды для обновления системы:







$ sudo apt-получить обновление

2. Выполните следующую команду, чтобы установить сервер и клиент MariaDB:



$ sudo apt-get установить mariadb-сервер mariadb-клиент

3. Выполните следующую команду, чтобы установить сценарий безопасности для базы данных MariaDB:



$ судо mysql_secure_installation

4. Выполните следующую команду, чтобы перезапустить сервер MariaDB:





$ sudo /etc/init.d/mariadb перезапустить

6. Выполните следующую команду, чтобы войти на сервер MariaDB:

$ sudo mariadb -u корень -p

Список примеров SQL-запросов



  1. Создайте базу данных
  2. Создайте таблицы
  3. Переименовать имя таблицы
  4. Добавить новый столбец в таблицу
  5. Удалить столбец из таблицы
  6. Вставить одну строку в таблицу
  7. Вставить несколько строк в таблицу
  8. Чтение всех определенных полей из таблицы
  9. Прочитайте таблицу после фильтрации данных из таблицы
  10. Прочтите таблицу после фильтрации данных на основе булевой логики
  11. Прочитайте таблицу после фильтрации строк на основе диапазона данных
  12. Прочитайте таблицу после сортировки таблицы на основе определенных столбцов.
  13. Прочитайте таблицу, установив альтернативное имя столбца
  14. Подсчитайте общее количество строк в таблице
  15. Чтение данных из нескольких таблиц
  16. Прочитайте таблицу, сгруппировав определенные поля
  17. Прочтите таблицу после исключения повторяющихся значений
  18. Прочитайте таблицу, ограничив количество строк
  19. Прочитайте таблицу на основе частичного совпадения
  20. Подсчитайте сумму определенного поля таблицы
  21. Найдите максимальное и минимальное значения конкретного поля
  22. Чтение данных об определенной части поля
  23. Чтение данных таблицы после конкатенации
  24. Прочитайте данные таблицы после математического расчета
  25. Создать представление таблицы
  26. Обновите таблицу на основе конкретного условия
  27. Удалить данные таблицы на основе конкретного условия
  28. Удалить все записи из таблицы
  29. Бросьте стол
  30. Удалить базу данных

Создайте базу данных

Предположим, нам нужно разработать простую базу данных для системы управления библиотекой. Для выполнения этой задачи на сервере необходимо создать базу данных, содержащую несколько реляционных таблиц. После входа на сервер базы данных выполните следующую команду, чтобы создать базу данных с именем «библиотека» на сервере базы данных MariaDB:

СОЗДАВАТЬ БАЗА ДАННЫХ библиотека;

Вывод показывает, что база данных библиотеки создана на сервере:

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

ИСПОЛЬЗОВАТЬ библиотека;

Вывод показывает, что выбрана база данных библиотеки:

Создайте таблицы

Следующим шагом является создание необходимых таблиц для хранения данных в базе данных. В этой части руководства создаются три таблицы. Это книги, члены и таблицы заимствования_info.

  1. В таблице books хранятся все данные, связанные с книгами.
  2. В таблице участников хранится вся информация об участниках, которые берут книгу в библиотеке.
  3. В таблице exchange_info хранится информация о том, какая книга каким участником заимствована.

1. Книги Стол

Запустите следующую инструкцию SQL, чтобы создать таблицу с именем «books» в базе данных «library», содержащую семь полей и один первичный ключ. Здесь поле «id» является первичным ключом, а тип данных — int. Атрибут auto_increment используется для поля «id». Таким образом, значение этого поля автоматически увеличивается при вставке новой строки. Тип данных varchar используется для хранения строковых данных переменной длины. В полях «заголовок», «автор», «публикация» и «isbn» хранятся строковые данные. Тип данных полей total_copy и price — int. Таким образом, эти поля хранят числовые данные.

СОЗДАВАТЬ СТОЛ книги (
идентификатор INT АВТОМАТИЧЕСКОЕ ПРИРАЩЕНИЕ ,
заголовок ВАРЧАР ( пятьдесят ) ,
автор ВАРЧАР ( пятьдесят ) ,
публикация ВАРЧАР ( 100 ) ,
исбн ВАРЧАР ( 30 ) ,
total_copy INT ,
цена INT ,
НАЧАЛЬНЫЙ КЛЮЧ ( идентификатор ) ) ;

Вывод показывает, что таблица «books» создана успешно:

2. Члены Стол

Запустите следующую инструкцию SQL, чтобы создать таблицу с именем «members» в базе данных «library», содержащую 5 полей и один первичный ключ. Поле «id» имеет атрибут auto_increment, как и таблица «books». Тип данных других полей — varchar. Таким образом, эти поля хранят строковые данные.

СОЗДАВАТЬ СТОЛ члены (
идентификатор INT АВТОМАТИЧЕСКОЕ ПРИРАЩЕНИЕ ,
имя ВАРЧАР ( пятьдесят ) ,
адрес ВАРЧАР ( 200 ) ,
контакт_но ВАРЧАР ( пятнадцать ) ,
электронная почта ВАРЧАР ( пятьдесят ) ,
НАЧАЛЬНЫЙ КЛЮЧ ( идентификатор ) ) ;

Вывод показывает, что таблица «members» создана успешно:

3. Занять_информация Стол

Запустите следующую инструкцию SQL, чтобы создать таблицу с именем «borrow_info» в базе данных «библиотека», которая содержит 6 полей. Здесь поле «id» является первичным ключом, но атрибут auto_increment для этого поля не используется. Таким образом, уникальное значение вставляется вручную в это поле при вставке новой записи в таблицу. Поля book_id и member_id являются внешними ключами для этой таблицы; это первичный ключ таблицы «books» и таблицы «members». Тип данных для полей exchange_date и return_date — дата. Таким образом, эти два поля хранят значение даты в формате «ГГГГ-ММ-ДД».

СОЗДАВАТЬ СТОЛ заимствование_информация (
идентификатор INT ,
заимствовать_дата ДАТА ,
book_id INT ,
ID пользователя INT ,
Дата возврата ДАТА ,
ПОЛОЖЕНИЕ ДЕЛ ВАРЧАР ( 10 ) ,
НАЧАЛЬНЫЙ КЛЮЧ ( идентификатор ) ,
ИНОСТРАННЫЙ КЛЮЧ ( book_id ) ИСПОЛЬЗОВАННАЯ ЛИТЕРАТУРА книги ( идентификатор ) ,
ИНОСТРАННЫЙ КЛЮЧ ( ID пользователя ) ИСПОЛЬЗОВАННАЯ ЛИТЕРАТУРА члены ( идентификатор ) ) ;

Вывод показывает, что таблица «borrow_info» успешно создана:

Переименовать имя таблицы

Оператор ALTER TABLE может использоваться для различных целей в операторах SQL. Выполните следующую инструкцию ALTER TABLE, чтобы изменить имя таблицы «borrow_info» на «book_borrow_info». Затем можно использовать оператор SHOW table, чтобы проверить, было ли изменено имя таблицы.

ИЗМЕНИТЬ СТОЛ заимствование_информация ПЕРЕИМЕНОВАТЬ К book_borrow_info;
ПОКАЗЫВАТЬ ТАБЛИЦЫ ;

Вывод показывает, что имя таблицы было успешно изменено, а имя таблицы Borrow_info было изменено на book_borrow_info:

Добавить новый столбец в таблицу

Оператор ALTER TABLE можно использовать для добавления или удаления одного или нескольких столбцов после создания таблицы. Следующий оператор ALTER TABLE добавляет к членам таблицы новое поле с именем «статус». Оператор DESCRIBE используется, чтобы показать, была ли изменена структура таблицы.

ИЗМЕНИТЬ СТОЛ члены ДОБАВЛЯТЬ ПОЛОЖЕНИЕ ДЕЛ ВАРЧАР ( 10 ) ;
ОПИСЫВАТЬ члены;

Вывод показывает, что в таблицу «members» добавлен новый столбец «status», а тип данных таблицы — varchar:

Удалить столбец из таблицы

Следующий оператор ALTER TABLE удаляет поле с именем «status» из таблицы «members». Оператор DESCRIBE используется, чтобы показать, была ли изменена структура таблицы.

ИЗМЕНИТЬ СТОЛ члены УРОНИТЬ СТОЛБЕЦ ПОЛОЖЕНИЕ ДЕЛ ;
ОПИСЫВАТЬ члены;

Вывод показывает, что столбец «status» удален из таблицы «members»:

Вставить одну строку в таблицу

Оператор INSERT INTO используется для вставки одной или нескольких строк в таблицу. Выполните следующую инструкцию SQL, чтобы вставить одну строку в таблицу «books». Здесь поле «id» опущено из этого запроса, потому что оно автоматически вставляется в запись, когда вставляется новая запись для атрибута автоинкремента. Если это поле используется в операторе INSERT, значение должно быть NULL.

ВСТАВЛЯТЬ В книги ( заголовок , автор , публикация , исбн , total_copy , цена )
ЦЕННОСТИ ( «SQL за 10 минут» , 'Бен Форта' , «Самс Паблишинг» , '784534235' , 5 , 39 ) ;

Вывод показывает, что запись успешно добавлена ​​в таблицу «books»:

Данные могут быть вставлены в таблицу с помощью предложения SET, где каждое значение поля назначается отдельно. Выполните следующую инструкцию SQL, чтобы вставить одну строку в таблицу «members», используя предложения INSERT INTO и SET. Поле «id» также опущено в этом запросе, как и в предыдущем примере, по той же причине.

ВСТАВЛЯТЬ В члены
НАБОР имя '=' 'Джон Сина' , адрес '=' '34, Дханмонди 9/А, Дакка' , контакт_но '=' «+14844731336» , электронная почта '=' «Джон@gmail.com» ;

Вывод показывает, что запись успешно добавлена ​​в таблицу участников:

Запустите следующую инструкцию SQL, чтобы вставить одну строку в таблицу «book_borrow_info»:

ВСТАВЛЯТЬ В book_borrow_info ( идентификатор , заимствовать_дата , book_id , ID пользователя , Дата возврата , ПОЛОЖЕНИЕ ДЕЛ )
ЦЕННОСТИ ( 1 , '2023-03-12' , 1 , 1 , '2023-03-19' , «Позаимствовал» ) ;

Вывод показывает, что запись добавлена ​​в таблицу «book_borrow_info»:

Вставить несколько строк в таблицу

Иногда требуется добавить много записей за один раз с помощью одного оператора INSERT INTO. Выполните следующую инструкцию SQL, чтобы вставить три записи в таблицу «books» с помощью одной инструкции INSERT INTO. В этом случае предложение VALUES используется один раз, а данные каждой записи разделяются запятой.

ВСТАВЛЯТЬ В книги ( заголовок , автор , публикация , исбн , total_copy , цена )
ЦЕННОСТИ
( «Поваренная книга SQL (О'Рейли)» , 'Энтони Молинаро' , 'О'Рейли' , '2467777532' , 10 , 49 ) ,
( «SQL-запросы для простых смертных» , 'Джон Виескас' , 'Эддисон-Уэсли' , '673456234' , пятнадцать , 35 ) ,
( «Изучение SQL» , 'Алан Болье' , ООО 'Пингвин Букс' , '534433222' , 12 , Четыре пять ) ;

Вывод показывает, что в таблицу «books» добавлены три записи:

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

Оператор SELECT используется для чтения данных из таблицы «базы данных». Символ «*» используется для обозначения всех полей таблицы в операторе SELECT. Запустите следующую команду SQL, чтобы прочитать все записи таблицы books:

ВЫБИРАТЬ * ОТ книги;

Вывод показывает все записи таблицы books, содержащей 4 записи:

Запустите следующую команду SQL, чтобы прочитать все записи трех полей таблицы «members»:

ВЫБИРАТЬ имя , электронная почта , контакт_но ОТ члены;

Вывод показывает все записи трех полей таблицы «members»:

Прочитайте таблицу после фильтрации данных из таблицы

Предложение WHERE используется для чтения данных из таблицы на основе одного или нескольких условий. Запустите следующую инструкцию SELECT, чтобы прочитать все записи всех полей таблицы «книги», где имя автора — «Джон Виескас».

ВЫБИРАТЬ * ОТ книги ГДЕ автор '=' 'Джон Виескас' ;

Таблица «books» содержит одну запись, соответствующую условию предложения WHERE, показанному в выводе:

Прочтите таблицу после фильтрации данных на основе булевой логики

Булева логика AND используется для определения нескольких условий в предложении WHERE, которое возвращает true, если все условия возвращают true. Выполните следующую инструкцию SELECT, чтобы прочитать все записи всех полей таблицы «books», где значение поля total_copy больше 10, а значение поля цены меньше 45, используя логическое И.

ВЫБИРАТЬ * ОТ книги ГДЕ total_copy > 10 И цена < Четыре пять ;

Таблица books содержит одну запись, соответствующую условию предложения WHERE, показанному в выводе:

Логика логического ИЛИ используется для определения нескольких условий в предложении WHERE, которое возвращает значение true, если какое-либо из условий возвращает значение true. Запустите следующую инструкцию SELECT, чтобы прочитать все записи всех полей таблицы «books», где значение поля total_copy больше 10 или значение поля цены больше 40.

ВЫБИРАТЬ * ОТ книги ГДЕ total_copy > 10 ИЛИ цена > 40 ;

Таблица books содержит три записи, соответствующие условию предложения WHERE, показанному в выходных данных:

Логика логического НЕ используется для возврата false, когда условие истинно, и возвращает true, когда условие ложно. Запустите следующую инструкцию SELECT, чтобы прочитать все записи всех полей таблицы «книги», где значение поля автора не равно «Аддисон-Уэсли».

ВЫБИРАТЬ * ОТ книги ГДЕ НЕТ автор '=' «Эддисон-Уэсли» ;

Таблица «books» содержит три записи, соответствующие условию предложения WHERE, показанному в выводе:

Прочитайте таблицу после фильтрации строк на основе диапазона данных

Предложение BETWEEN используется для чтения диапазона данных из таблицы базы данных. Выполните следующую инструкцию SELECT, чтобы прочитать все записи всех полей таблицы «books», где значение поля цены находится в диапазоне от 40 до 50.

ВЫБИРАТЬ * ОТ книги ГДЕ цена МЕЖДУ 40 И пятьдесят ;

Таблица books содержит две записи, соответствующие условию предложения WHERE, показанному в выходных данных. Книги значений цен, 39 и 35, исключены из набора результатов, поскольку они находятся вне допустимого диапазона.

Прочитайте таблицу после сортировки таблицы

Предложение ORDER BY используется для сортировки набора результатов оператора SELECT в порядке возрастания или убывания. Набор результатов по умолчанию сортируется в порядке возрастания, если предложение ORDER BY используется без ASC или DESC. Следующая инструкция SELECT считывает отсортированные записи из таблицы books на основе поля title:

ВЫБИРАТЬ * ОТ книги ЗАКАЗ К заголовок;

Данные поля title таблицы «books» в выводе сортируются по возрастанию. Книга «Learning SQL» идет первой по алфавиту, если поле заголовка таблицы «books» отсортировано по возрастанию.

Прочитайте таблицу, установив альтернативное имя столбца

Альтернативное имя столбца используется в запросе, чтобы сделать результирующий набор более читаемым. Альтернативное имя задается с помощью ключевого слова «AS». Следующая инструкция SQL возвращает значения полей заголовка и автора, устанавливая альтернативные имена.

ВЫБИРАТЬ заголовок КАК `Название книги` , автор КАК `Имя автора`
ОТ книги;

Поле заголовка отображается с альтернативным именем, которое является «Имя книги», а поле автора отображается с альтернативным именем, которое является «Имя автора» в выходных данных.

Подсчитайте общее количество строк в таблице

COUNT() — это агрегатная функция SQL, которая используется для подсчета общего количества строк на основе определенного поля или всех полей. Символ «*» используется для обозначения всех полей, а COUNT(*) используется для подсчета всех записей таблицы.

Следующий запрос подсчитывает общее количество записей таблицы books:

ВЫБИРАТЬ СЧИТАТЬ ( * ) КАК `Всего книг` ОТ книги;

В выводе показаны четыре записи в таблице «books»:

Следующий запрос подсчитывает общее количество строк таблицы «members» на основе поля «id»:

ВЫБИРАТЬ СЧИТАТЬ ( идентификатор ) КАК `Всего участников` ОТ члены;

Таблица «members» имеет два значения идентификатора, которые печатаются в выводе:

Чтение данных из нескольких таблиц

Предыдущие операторы SELECT извлекали данные из одной таблицы. Но оператор SELECT можно использовать для извлечения данных из двух или более таблиц. Следующий запрос SELECT считывает значения полей title и author из таблицы «books», а параметр «заем_дата» — из таблицы «book_borrow_info».

ВЫБИРАТЬ заголовок , автор , заимствовать_дата
ОТ книги , book_borrow_info
ГДЕ книги . идентификатор '=' book_borrow_info . book_id;

Следующий вывод показывает, что книга «SQL за 10 минут» заимствована два раза, а книга «Поваренная книга SQL (O’Reilly)» заимствована один раз:

Данные могут быть извлечены из нескольких таблиц с использованием различных типов СОЕДИНЕНИЙ, таких как ВНУТРЕННЕЕ СОЕДИНЕНИЕ, ВНЕШНЕЕ СОЕДИНЕНИЕ и т. д., которые не объясняются в этом руководстве.

Прочитайте таблицу, сгруппировав определенные поля

Предложение GROUP BY используется для чтения записей из таблицы путем группировки строк на основе одного или нескольких полей. Этот тип запроса называется сводным запросом. Вы должны вставить несколько строк в таблицы, чтобы проверить использование предложения GROUP BY. Запустите следующие операторы INSERT, чтобы вставить одну запись в таблицу «members» и две записи в таблицу «book_borrow_info».

ВСТАВЛЯТЬ В члены
НАБОР имя '=' 'Ше Хасан' , адрес '=' '11/A, Джигатола, Дакка' , контакт_но '=' '+8801734563423' , электронная почта '=' 'она@gmail.com' ;
ВСТАВЛЯТЬ В book_borrow_info ( идентификатор , заимствовать_дата , book_id , ID пользователя , Дата возврата , ПОЛОЖЕНИЕ ДЕЛ )
ЦЕННОСТИ ( 2 , '2023-04-10' , 1 , 1 , '2023-04-15' , «Вернулся» ) ;
ВСТАВЛЯТЬ В book_borrow_info ( идентификатор , заимствовать_дата , book_id , ID пользователя , Дата возврата , ПОЛОЖЕНИЕ ДЕЛ )
ЦЕННОСТИ ( 3 , '20.05.2023' , 2 , 1 , '2023-05-30' , «Позаимствовал» ) ;

После вставки данных путем выполнения предыдущих запросов запустите следующий оператор SELECT, который подсчитывает общее количество заимствованных книг и имя участника на основе каждого участника с помощью предложения GROUP BY. Здесь функция COUNT() работает с полем, используемым для перегруппировки записей с помощью предложения GROUP BY. Здесь для группировки используется поле book_id таблицы «members».

ВЫБИРАТЬ СЧИТАТЬ ( book_id ) КАК `Всего заимствовано книг` , имя КАК `Имя участника` ОТ книги , члены , book_borrow_info ГДЕ книги . идентификатор '=' book_borrow_info . book_id И члены . идентификатор '=' book_borrow_info . ID пользователя ГРУППА К book_borrow_info . ID пользователя;

Согласно данным таблиц books, «members» и «book_borrow_info», «Джон Сина» одолжил 2 книги, а «Элла Хасан» одолжил 1 книгу.

Прочтите таблицу после исключения повторяющихся значений

Иногда дублирующиеся данные генерируются в наборе результатов оператора SELECT на основе ненужных табличных данных. Например, следующая инструкция SELECT возвращает повторяющиеся записи для данных таблицы «book_borrow_info».

ВЫБИРАТЬ имя , электронная почта
ОТ члены , book_borrow_info
ГДЕ book_borrow_info . ID пользователя '=' члены . идентификатор;

В выводе одна и та же запись появляется дважды, потому что участник «Джон Сина» позаимствовал две книги. Эту проблему можно решить с помощью ключевого слова DISTINCT. Он удаляет повторяющиеся записи из результатов запроса.

Следующий оператор SELECT создает уникальные записи набора результатов из таблиц «members» и «book_borrow_info» после исключения повторяющихся значений с помощью ключевого слова DISTINCT в запросе.

ВЫБИРАТЬ ОТЧЕТЛИВЫЙ имя , электронная почта
ОТ члены , book_borrow_info
ГДЕ book_borrow_info . ID пользователя '=' члены . идентификатор;

Вывод показывает, что повторяющееся значение удалено из набора результатов:

Прочитайте таблицу, ограничив количество строк

Иногда требуется прочитать определенное количество записей из начала набора результатов, конца набора результатов или середины набора результатов из таблицы базы данных, ограничивая количество строк. Это можно сделать разными способами. Перед ограничением строк выполните следующую инструкцию SQL, чтобы проверить, сколько записей существует в таблице books:

ВЫБИРАТЬ * ОТ книги;

Вывод показывает, что таблица books содержит четыре записи:

Следующий оператор SELECT считывает первые две записи из таблицы «books», используя предложение LIMIT со значением 2:

ВЫБИРАТЬ * ОТ книги ПРЕДЕЛ 2 ;

Извлекаются первые две записи таблицы «books», что показано в выводе:

Предложение FETCH является альтернативой предложению LIMIT, и его использование показано в следующем операторе SELECT. Первые 3 записи таблицы «books» извлекаются с помощью предложения FETCH FIRST 3 ROWS ONLY в операторе SELECT:

ВЫБИРАТЬ * ОТ книги FETCH ПЕРВЫЙ 3 РЯДЫ ТОЛЬКО ;

Вывод показывает первые 3 записи таблицы «books»:

Две записи из 3 рд строка таблицы books извлекается с помощью следующего оператора SELECT. Предложение LIMIT используется здесь со значением 2, 2, где первые 2 определяют начальную позицию строки таблицы, отсчет которой начинается с 0, а вторые 2 определяют количество строк, отсчет которых начинается с начальной позиции.

ВЫБИРАТЬ * ОТ книги ПРЕДЕЛ 2 , 2 ;

После выполнения предыдущего запроса появляется следующий вывод:

Записи с конца таблицы можно прочитать, отсортировав таблицу в порядке убывания на основе автоматически увеличивающегося значения первичного ключа и используя предложение LIMIT. Запустите следующую инструкцию SELECT, которая считывает две последние записи из таблицы «books». Здесь набор результатов сортируется в порядке убывания на основе поля «id».

ВЫБИРАТЬ * ОТ книги ЗАКАЗ К идентификатор DESC ПРЕДЕЛ 2 ;

Последние две записи таблицы books показаны в следующем выводе:

Прочитайте таблицу на основе частичного совпадения

Предложение LIKE используется с символом «%» для извлечения записей из таблицы путем частичного сопоставления. Следующий оператор SELECT ищет записи в таблице «книги», где поле автора содержит «Джон» в начале значения с использованием предложения LIKE. Здесь символ «%» используется в конце строки поиска.

ВЫБИРАТЬ * ОТ книги ГДЕ автор НРАВИТЬСЯ 'Джон%' ;

В таблице «книги» существует только одна запись, содержащая строку «Джон» в начале значения поля автора.

Следующий оператор SELECT ищет записи в таблице «books», где поле публикации содержит «Ltd» в конце значения, используя предложение LIKE. Здесь в начале строки поиска используется символ «%»:

ВЫБИРАТЬ * ОТ книги ГДЕ публикация НРАВИТЬСЯ '% ООО' ;

В таблице «books» существует только одна запись, содержащая строку «Ltd» в конце поля публикации.

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

ВЫБИРАТЬ * ОТ книги ГДЕ заголовок НРАВИТЬСЯ '%Запросы%' ;

В таблице «книги» существует только одна запись, содержащая строку «Запросы» в поле заголовка.

Подсчитайте сумму определенного поля таблицы

SUM() — еще одна полезная агрегатная функция SQL, которая вычисляет сумму значений любого числового поля таблицы. Эта функция принимает один аргумент, который должен быть числовым. Следующая инструкция SQL вычисляет сумму всех значений поля цены таблицы «books», которая содержит целочисленные значения.

ВЫБИРАТЬ СУММА ( цена ) КАК `Общая стоимость книги`
ОТ книги;

Вывод показывает значение суммирования всех значений поля цены таблицы «книги». Четыре значения поля цены: 39, 49, 35 и 45. Сумма этих значений равна 168.

Найдите максимальное и минимальное значения конкретного поля

Агрегатные функции MIN() и MAX() используются для определения минимального и максимального значений конкретного поля таблицы. Обе функции принимают один аргумент, который должен быть числовым. Следующая инструкция SQL находит минимальное значение цены из таблицы «books», которая является целым числом.

ВЫБИРАТЬ МИН. ( цена ) КАК `Книга минимальной стоимости` ОТ книги;

Тридцать пять (35) — это минимальное значение поля цены, которое печатается в выводе.

Следующая инструкция SQL находит максимальное значение цены из таблицы «books»:

ВЫБИРАТЬ МАКС ( цена ) КАК `Книга максимальной стоимости` ОТ книги;

Сорок девять (49) — это максимальное значение поля цены, которое печатается в выводе.

Чтение определенной части данных или поля

Функция SUBSTR() используется в операторе SQL для извлечения определенной части строковых данных или значения определенного поля таблицы. Эта функция содержит три аргумента. Первый аргумент содержит строковое значение или значение поля таблицы, которая является строкой. Второй аргумент содержит начальную позицию подстроки, полученной из первого аргумента, и отсчет этого значения начинается с 1. Третий аргумент содержит длину подстроки, отсчет которой начинается с начальной позиции.

Следующий оператор SELECT вырезает и печатает первые пять символов из строки «Learn SQL Basics», где начальная позиция равна 1, а длина равна 5:

ВЫБИРАТЬ SUBSTR ( «Изучите основы SQL» , 1 , 5 ) КАК `Значение подстроки` ;

Первые пять символов строки «Learn SQL Basics» — «Learn», которая печатается в выводе.

Следующий оператор SELECT вырезает и печатает SQL из строки «Learn SQL Basics», где начальная позиция равна 7, а длина равна 3:

ВЫБИРАТЬ SUBSTR ( «Изучите основы SQL» , 7 , 3 ) КАК `Значение подстроки` ;

После выполнения предыдущего запроса появляется следующий вывод:

Следующий оператор SELECT вырезает и печатает первые пять символов из поля имени таблицы «members»:

ВЫБИРАТЬ SUBSTR ( имя , 1 , 5 ) КАК `Имя участника` ОТ члены;

Вывод показывает первые пять символов каждого значения поля имени таблицы «members».

Чтение данных таблицы после конкатенации

Функция CONCAT() используется для создания вывода путем объединения одного или нескольких полей таблицы или добавления строковых данных или конкретного значения поля таблицы. Следующая инструкция SQL считывает значения полей заголовка, автора и цены таблицы «книги», а строковое значение «$» добавляется к каждому значению поля цены с помощью функции CONCAT().

ВЫБИРАТЬ заголовок КАК Заголовок , автор КАК Автор , СЦЕПИТЬ ( '$' , цена ) КАК Цена
ОТ книги;

Значения поля цены печатаются в выводе путем объединения со строкой «$».

Запустите следующую инструкцию SQL, чтобы объединить значения полей title и author таблицы «books» со строковым значением «by» с помощью функции CONCAT():

ВЫБИРАТЬ СЦЕПИТЬ ( заголовок , ' к ' , автор ) КАК `Название книги с автором`
ОТ книги;

После выполнения предыдущего запроса SELECT появляется следующий вывод:

Прочтите табличные данные после математического расчета

Любые математические вычисления могут быть выполнены во время получения значений таблицы с помощью оператора SELECT. Выполните следующую инструкцию SQL, чтобы прочитать идентификатор, название, цену и значение цены со скидкой после расчета скидки 5%.

ВЫБИРАТЬ идентификатор , заголовок , цена КАК `Обычная цена` , цена - ( цена * 5 / 100 ) КАК `Цена со скидкой`
ОТ книги;

Следующий вывод показывает обычную цену и цену со скидкой для каждой книги:

Создать представление таблицы

VIEW используется для упрощения запроса и обеспечения дополнительной безопасности базы данных. Он работает как виртуальная таблица, которая создается из одной или нескольких таблиц. Метод создания и выполнения простого VIEW на основе таблицы «members» показан в следующем примере. VIEW выполняется с помощью оператора SELECT. Следующая инструкция SQL создает ВИД таблицы «members» с полями id, name, address и contact_no. Оператор SELECT выполняет файл member_view.

СОЗДАВАТЬ ВИД member_view КАК
ВЫБИРАТЬ идентификатор , имя , адрес , контакт_но
ОТ члены;

ВЫБИРАТЬ * ОТ член_представление;

После создания и выполнения представления появляется следующий вывод:

Обновите таблицу на основе конкретного условия

Оператор UPDATE используется для обновления содержимого таблицы. Если какой-либо запрос UPDATE выполняется без предложения WHERE, обновляются все поля, используемые в запросе UPDATE. Таким образом, необходимо использовать оператор UPDATE с соответствующим предложением WHERE. Запустите следующую инструкцию UPDATE, чтобы обновить поля name и contact_no, где значение поля id равно 1. Затем выполните инструкцию SELECT, чтобы проверить, правильно ли обновлены данные.

ОБНОВЛЯТЬ члены
НАБОР имя '=' 'Джанифер' , контакт_но '=' '+880175621223'
ГДЕ идентификатор '=' 1 ;

ВЫБИРАТЬ * ОТ члены;

Следующий вывод показывает, что оператор UPDATE выполнен успешно. Значение поля имени изменено на «Janifer», а поле contact_no изменено на «+880175621223» записи, которая содержит значение идентификатора 1, с использованием запроса UPDATE:

Удалить данные таблицы на основе конкретного условия

Оператор DELETE используется для удаления определенного содержимого или всего содержимого таблицы. Если какой-либо запрос DELETE выполняется без предложения WHERE, все поля удаляются. Таким образом, необходимо использовать оператор UPDATE с соответствующим предложением WHERE. Запустите следующую инструкцию DELETE, чтобы удалить все данные из таблицы books, где значение id равно 4. Затем выполните инструкцию SELECT, чтобы проверить, правильно ли удалены данные.

УДАЛИТЬ ОТ книги ГДЕ идентификатор '=' 4 ;
ВЫБИРАТЬ * ОТ книги;

Следующий вывод показывает, что инструкция DELETE выполнена успешно. 4 й запись таблицы books удаляется с помощью запроса DELETE:

Удалить все записи из таблицы

Выполните следующую инструкцию DELETE, чтобы удалить все записи из таблицы «books», в которых опущено предложение WHERE. Затем выполните запрос SELECT, чтобы проверить содержимое таблицы.

УДАЛИТЬ ОТ book_borrow_info;
ВЫБИРАТЬ * ОТ book_borrow_info;

Следующий вывод показывает, что таблица «books» пуста после выполнения запроса DELETE:

Если какая-либо таблица содержит атрибут автоинкремента и все записи удаляются из таблицы, поле автоинкремента начинает отсчет с последнего приращения, когда новая запись вставляется после опустошения таблицы. Эту проблему можно решить с помощью оператора TRUNCATE. Он также используется для удаления всех записей из таблицы, но поле автоинкремента начинает отсчет с 1 после удаления всех записей из таблицы. SQL оператора TRUNCATE показан ниже:

ОБРЕЗАТЬ book_borrow_info;

Бросьте стол

Одну или несколько таблиц можно удалить, проверяя или не проверяя, существует таблица или нет. Следующие операторы DROP удаляют таблицу «book_borrow_info», а оператор «SHOW table» проверяет, существует ли таблица на сервере.

УРОНИТЬ СТОЛ book_borrow_info;
ПОКАЗЫВАТЬ ТАБЛИЦЫ ;

Вывод показывает, что таблица book_borrow_info удалена.

Таблицу можно удалить, проверив, существует ли она на сервере или нет. Выполните следующую инструкцию DROP, чтобы удалить книги и таблицу участников, если эти таблицы существуют на сервере. Затем оператор «SHOW table» проверяет, существуют ли таблицы на сервере.

УРОНИТЬ СТОЛ ЕСЛИ СУЩЕСТВУЕТ книги , члены;
ПОКАЗЫВАТЬ ТАБЛИЦЫ ;

Следующий вывод показывает, что таблицы удалены с сервера:

Удалить базу данных

Запустите следующую инструкцию SQL, чтобы удалить базу данных «библиотека» с сервера:

УРОНИТЬ БАЗА ДАННЫХ библиотека;

Вывод показывает, что база данных удалена.

Заключение

В этом руководстве показаны наиболее часто используемые примеры SQL-запросов для создания, доступа, изменения и удаления базы данных сервера MariaDB путем создания базы данных и трех таблиц. Использование различных операторов SQL объясняется очень простыми примерами, чтобы помочь новому пользователю базы данных правильно изучить основы SQL. Использование сложных запросов здесь не рассматривается. Новые пользователи базы данных смогут начать работать с любой базой данных после надлежащего прочтения этого руководства.