Архив рубрики: MySQL

Как переименовать имя столбца в SQL

В SQL переименование имен столбцов является обычным требованием при работе с таблицами базы данных. Если вам нужно улучшить удобочитаемость, стандартизировать соглашения об именовании или учесть изменения в структуре данных, переименование столбцов может быть выполнено с помощью инструкции SQL ALTER TABLE. Эта статья содержит подробное руководство по переименованию имен столбцов в SQL, охватывающее синтаксис, примеры и рекомендации. Читать

Шпаргалка по SQL – базовые запросы

Порядок выполнения ключевых слов отличается от последовательности в SQL-запросе:

  1. Сначала выполняется оператор FROM — происходит выбор нужной таблицы.
  2. Затем SELECT — отбираются указанные столбцы.
  3. Потом ORDER BY — производится сортировка результирующей таблицы.
  4. И в самом конце 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

PostgreSQL COALESCE

Математика и арифметика

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
  1. На каждом этапе WHEN – THEN вычисляется некоторое логическое выражение logical_expression, стоящее после WHEN. Если оно оказывается истинным (TRUE), то в качестве результата оператор возвращает выражение expression, стоящее после THEN, и заканчивает свою работу.
  2. Если выражение оказывается ложным (FALSE), то оператор продолжает работу и проверяет следующее условие.
  3. Если ни одно из условий не проходит проверку на истинность, то возвращается выражение, указанное после ELSE. При этом ELSE указывать не обязательно — если его не указать, то вернётся пустое значение NULL (в случае, если все проверки после WHEN оказались ложными).
  4. В конце обязательно указывается ключевое слово 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. В восьмой версии этот синтаксис выдает ошибку:

Читать