В SQL переименование имен столбцов является обычным требованием при работе с таблицами базы данных. Если вам нужно улучшить удобочитаемость, стандартизировать соглашения об именовании или учесть изменения в структуре данных, переименование столбцов может быть выполнено с помощью инструкции SQL ALTER TABLE. Эта статья содержит подробное руководство по переименованию имен столбцов в SQL, охватывающее синтаксис, примеры и рекомендации. Читать
Архив рубрики: MySQL
Шпаргалка по SQL – базовые запросы
Порядок выполнения ключевых слов отличается от последовательности в SQL-запросе:
- Сначала выполняется оператор
FROM— происходит выбор нужной таблицы. - Затем
SELECT— отбираются указанные столбцы. - Потом
ORDER BY— производится сортировка результирующей таблицы. - И в самом конце
LIMIT— ограничивается количество выводимых записей.
SELECT
Чтобы вывести все записи со значениями во всех колонках, необходимо либо перечислить все колонки в операторе SELECT, либо указать после оператора специальный символ «*»:
SELECT column_1, column_2, ...
FROM table
SELECT *
FROM table
ORDER BY
Для сортировки значений по какой-либо колонке в SQL используется оператор ORDER BY с ключевыми словами ASC (по возрастанию) или DESC (по убыванию).
При этом по умолчанию сортировка происходит по возрастанию, т.е. ASC указывать не обязательно. Для сортировки по убыванию после ORDER BY необходимо явно указать DESC:
SELECT column_1, column_2
FROM table
ORDER BY column_1 -- сортировка по возрастанию
SELECT column_1, column_2
FROM table
ORDER BY column_1 ASC -- сортировка по возрастанию
SELECT column_1, column_2
FROM table
ORDER BY column_1 DESC -- сортировка по убыванию
Сортировать результат SQL-запроса можно сразу по нескольким колонкам, указывая их после ORDER BY через запятую вместе с направлением сортировки (ASC или DESC):
SELECT column_1, column_2
FROM table
ORDER BY column_1 DESC, column_2 -- сначала сортировка по первой колонке (по убыванию),
-- затем по второй (по возрастанию)
AS
При составлении SQL-запросов колонкам в результирующей таблице можно присваивать любые другие имена (их ещё называют «алиасами»). Это можно делать с помощью оператора AS:
SELECT name AS new_name
FROM table
SELECT name new_name
FROM table
Функции
В SQL-запросах к колонкам таблиц можно применять разные функции — так же, как, например, в Excel.
SELECT function(a, b, c, …)
FROM table
В SQL, как и во многих других языках, функции можно применять к результату других функций, т.е. последовательно:
SELECT function_one(function_two(a, b), c)
Строки
Список функций со строковыми данными
Типы данных
Иногда возникает необходимость изменить тип данных в какой-нибудь колонке результирующей таблицы, не меняя при этом свойства исходной таблицы — например, преобразовать число в текст (тип данных VARCHAR). Для этого существует функция CAST.
На вход функции CAST необходимо подать имя колонки, указав через AS тип данных, к которому нужно привести все значения:
SELECT CAST(column AS VARCHAR)
FROM table
Также изменить тип данных можно с помощью специального синтаксиса с двумя двоеточиями («::»):
SELECT column::VARCHAR
FROM table
Подробнее о преобразовании типов данных.
Конкатенация
Функция CONCAT принимает на вход несколько аргументов и возвращает результат их последовательного сложения друг с другом:
SELECT CONCAT('SQL', ' ', 'Simulator ', 2022)
Результат:
SQL Simulator 2022
Подробнее о конкатенации в примерах.
Дата и время
Подробнее о DATE_PART.
COALESCE
Функция COALESCE читает список значений слева направо и, как только видит значение, которое не является NULL, сразу же возвращает его и прекращает чтение списка.
SELECT COALESCE(NULL, 'I am not NULL' , 'karpov.courses')
Результат:
I am not NULL
SELECT COALESCE(NULL, 25, 100, 150)
Результат:
25
SELECT COALESCE('NULL', 'I am not NULL', 'karpov.courses')
Результат:
NULL
Математика и арифметика
SELECT (column_1 + column_2) / 2 AS average
FROM table
SELECT ROUND(100.5454, 2)
Результат:
100.55
SELECT ROUND(100.551, 1)
Результат:
100.6
SELECT ROUND(100.5511)
Результат:
101.0
Условия CASE
CASE
WHEN logical_expression_1 THEN expression_1
WHEN logical_expression_2 THEN expression_2
...
ELSE expression_else
END AS case_example
- На каждом этапе WHEN – THEN вычисляется некоторое логическое выражение logical_expression, стоящее после
WHEN. Если оно оказывается истинным (TRUE), то в качестве результата оператор возвращает выражение expression, стоящее послеTHEN, и заканчивает свою работу. - Если выражение оказывается ложным (
FALSE), то оператор продолжает работу и проверяет следующее условие. - Если ни одно из условий не проходит проверку на истинность, то возвращается выражение, указанное после
ELSE. При этомELSEуказывать не обязательно — если его не указать, то вернётся пустое значениеNULL(в случае, если все проверки послеWHENоказались ложными). - В конце обязательно указывается ключевое слово
END, которое говорит об окончании конструкцииCASE. Также послеENDновому расчётному полю с помощьюASможно присвоить некоторое имя, но это делать не обязательно. Обязательными являются только ключевые словаCASE,WHEN,THENиEND.
Сообщение Шпаргалка по SQL – базовые запросы появились сначала на Веб-студия Юсота.
Source: usota.ru knowledge-base
Решение проблем с ошибками SQL: все, что вам нужно знать
Ошибки SQL являются неотъемлемой частью работы с базами данных. Важно понимать их причины и способы решения, чтобы успешно разрабатывать и поддерживать приложения. В этой статье мы рассмотрим различные виды ошибок SQL, их возможные причины, а также методы решения таких проблем. Мы также предоставим ответы на часто задаваемые вопросы ошибках SQL и предложим полезные советы для профессионалов в области баз данных. Читать
Что такое MySQL? Полное руководство для начинающих и опытных пользователей
MySQL это популярная система управления реляционными базами данных с открытым исходным кодом. Она широко используется в веб-разработке, а также при создании различных приложений и серверов. В этой статье мы рассмотрим основы работы с MySQL, ее возможности и преимущества, а также ответим на часто задаваемые вопросы. Читать
Python — как подключиться к базе данных MySQL на хостинге
Для работы с MySQL в Python используется библиотека pymysql. Но чтобы подключиться с локальной машины к базе данных, которая расположена на сервере, используем библиотеку sshtunnel.
По сути – мы сначала подключаемся к хостингу через защищённое соединение, а уже через это соединение подключаемся к базе данных.
Перед подключением убедитесь, что на хостинге разрешен доступ по SSH. Читать
MySQL 8 — Предоставление прав на БД
В предыдущих версиях MySQL создание пользователя и предоставление ему прав на базу выполнялось командой, использующей сочетание GRANT и IDENTIFIED BY. В восьмой версии этот синтаксис выдает ошибку: