Памятка по MySQL

Памятка MySQL (cheat sheet) содержит  наиболее часто используемые команды и операторы MySQL, которые помогут вам более эффективно работать с MySQL.

Команды клиента командной строки MySQL

Подключитесь к серверу MySQL с помощью клиента командной строки mysql с именем пользователя и паролем (MySQL запросит пароль):

mysql -u [username] -p;

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

mysql -u [username] -p [database];

Выйдите из клиента командной строки mysql:

exit;

Экспорт данных с помощью инструмента mysqldump

mysqldump -u [username] -p [database] > data_backup.sql;

Чтобы очистить окно экранной консоли MySQL в Linux, используйте следующую команду:

mysql> system clear;

В настоящее время в ОС Windows нет команды для очистки окна консоли экрана MySQL.

Работа с базами данных

Создать базу данных с указанным именем, если она не существует на сервере базы данных

CREATE DATABASE [IF NOT EXISTS] database_name;

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

USE database_name;

Удалить базу данных с указанным именем навсегда. Все физические файлы, связанные с базой данных, будут удалены.

DROP DATABASE [IF EXISTS] database_name;

Показать все доступные базы данных на текущем сервере баз данных MySQL

SHOW DATABASE;

Работа с таблицами

Показать все таблицы в текущей базе данных.

SHOW TABLES;

Создать новую таблицу

CREATE TABLE [IF NOT EXISTS] table_name(
  column_list
);

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

ALTER TABLE table
ADD [COLUMN] column_name;

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

ALTER TABLE table_name
DROP [COLUMN] column_name;

Добавить индекс с определенным именем в таблицу по столбцу:

ALTER TABLE table
ADD INDEX [name](column, …);

Добавьте первичный ключ в таблицу:

ALTER TABLE table_name
ADD PRIMARY KEY (column_name,…);

Удалить первичный ключ таблицы:

ALTER TABLE table_name
DROP PRIMARY KEY;

Скиньте стол :

DROP TABLE [IF EXISTS] table_name;

Показать столбцы таблицы:

DESCRIBE table_name;

Показать информацию столбца в таблице:

DESCRIBE table_name column_name;

Работа с индексами

Создание индекса с указанным именем в таблице:

CREATE INDEX index_name
ON table_name (column,…);

Удалить индекс :

DROP INDEX index_name;

Создайте уникальный индекс :

CREATE UNIQUE INDEX index_name
ON table_name (column,…);

Работа с представлениями

Создайте новый вид:

CREATE VIEW [IF NOT EXISTS] view_name
AS
  select_statement;

Создайте новое представление с помощью WITH CHECK OPTION:

CREATE VIEW [IF NOT EXISTS] view_name
AS select_statement
WITH CHECK OPTION;

Создайте или замените представление:

CREATE OR REPLACE view_name
AS
select_statement;

Скиньте просмотр:

DROP VIEW [IF EXISTS] view_name;

Удалить несколько просмотров:

DROP VIEW [IF EXISTS] view1, view2, …;

Переименовать вид:

RENAME TABLE view_name
TO new_view_name;

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

SHOW FULL TABLES
[{FROM | IN } database_name]
WHERE table_type = 'VIEW';

Работа с триггерами

Создайте новый триггер:

CREATE TRIGGER trigger_name
{BEFORE | AFTER} {INSERT | UPDATE| DELETE }
ON table_name FOR EACH ROW
trigger_body;

Сбросить триггер:

DROP TRIGGER [IF EXISTS] trigger_name;

Показать триггеры в базе данных:

SHOW TRIGGERS
[{FROM | IN} database_name]
[LIKE 'pattern' | WHERE search_condition];

Работа с хранимыми процедурами

Создайте хранимую процедуру:

DELIMITER $$

CREATE PROCEDURE procedure_name(parameter_list)
BEGIN
   body;
END $$

DELIMITER ;

Удалить хранимую процедуру:

DROP PROCEDURE [IF EXISTS] procedure_name;

Показать хранимые процедуры:

SHOW PROCEDURE STATUS
[LIKE 'pattern' | WHERE search_condition];

Работа с сохраненными функциями

Создайте новую хранимую функцию:

DELIMITER $$

CREATE FUNCTION function_name(parameter_list)
RETURNS datatype
[NOT] DETERMINISTIC
BEGIN
 -- statements
END $$

DELIMITER ;

Удалить сохраненную функцию:

DROP FUNCTION [IF EXISTS] function_name;

Показать сохраненные функции:

SHOW FUNCTION STATUS
[LIKE 'pattern' | WHERE search_condition];

Запрос данных из таблиц

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

SELECT * FROM table_name;

Запросить данные из одного или нескольких столбцов таблицы:

SELECT
    column1, column2, …
FROM
    table_name;

Удалить повторяющиеся строки из результата запроса:

SELECT
    DISTINCT (column)
FROM
   table_name;

Запросите данные с фильтром, используя WHEREпредложение:

SELECT select_list
FROM table_name
WHERE condition;

Измените вывод имени столбца, используя псевдоним столбца :

SELECT
    column1 AS alias_name,
    expression AS alias,
    …
FROM
    table_name;

Запросите данные из нескольких таблиц, используя внутреннее соединение :

SELECT select_list
FROM table1
INNER JOIN table2 ON condition;

Запросите данные из нескольких таблиц, используя левое соединение :

SELECT select_list
FROM table1
LEFT JOIN table2 ON condition;

Запросите данные из нескольких таблиц, используя правое соединение :

SELECT select_list
FROM table1
RIGHT JOIN table2 ON condition;

Сделайте декартово произведение строк:

SELECT select_list
FROM table1
CROSS JOIN table2;

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

SELECT COUNT(*)
FROM table_name;

Сортировка набора результатов:

SELECT
    select_list
FROM
    table_name
ORDER BY
    column1 ASC [DESC],
    column2 ASC [DESC];

Сгруппируйте строки с помощью  GROUP BY предложения.

SELECT select_list
FROM table_name
GROUP BY column_1, column_2, …;

Группа фильтров с помощью HAVINGпредложения:

SELECT select_list
FROM table_name
GROUP BY column1
HAVING condition;

Изменение данных в таблицах

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

INSERT INTO table_name(column_list)
VALUES(value_list);

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

INSERT INTO table_name(column_list)
VALUES(value_list1),
      (value_list2),
      (value_list3),
      …;

Обновите все строки в таблице:

UPDATE table_name
SET column1 = value1,
    …;

Обновите данные для набора строк, указанного условием в WHEREпредложении.

UPDATE table_name
SET column_1 = value_1,
    …
WHERE condition

Обновление с присоединением

UPDATE
    table1,
    table2
INNER JOIN table1 ON table1.column1 = table2.column2
SET column1 = value1,
WHERE condition;

Удалить все строки в таблице

DELETE FROM table_name;

Удалить строки, заданные условием:

DELETE FROM table_name
WHERE condition;

Удалить с присоединением

DELETE table1, table2
FROM table1
INNER JOIN table2
    ON table1.column1 = table2.column2
WHERE condition;

Searching

Поиск данных с помощью LIKE оператора:

SELECT select_list
FROM table_name
WHERE column LIKE '%pattern%';

Текстовый поиск с использованием регулярного выражения с RLIKEоператором.

SELECT select_list
FROM table_name
WHERE column RLIKE 'regular_expression';
Читать по теме
Интересные статьи