Основные MySQL запросы (шпаргалка)
Создать таблицу
CREATE TABLE {имя_таблицы}
( {столбец_1} integer not null auto_increment primary key,
{столбец_2} varchar(10),
{столбец_3} varchar(100)
);
Переименовать столбец
ALTER TABLE {имя_таблицы} change {столбец_старое_имя} {столбец_новое_имя} text
Переименовать таблицу
ALTER TABLE {имя_таблицы_старое} rename {имя_таблицы_новое}
Добавить столбец после определенного столбца
ALTER TABLE {имя_таблицы} add {новый_столбец} varchar(50) after {старый_столбец}
Изменения типа столбца и его характеристик (Например на varchar(20))
ALTER TABLE {имя_таблицы} modify {столбец} varchar(20)
Вставляем данные в таблицу во все столбцы сразу
insert into {имя_таблицы} values
(0, "Alexey", "Smirnov", login1", "passwd", "user1@mail.ru"),
(0, "Alex", "Ivanov", "login2", "passwd", "user4@mail.ru");
Вставляем данные в таблицу только в указанные нами столбцы
insert into {имя_таблицы} ({столбец1}, {столбец3}, {столбец5}) values
(0, 1, "Hello world!");
Изменяем значение ячейки во всем столбце, без каких либо условий
UPDATE {имя_таблицы} set {имя_столбца} = '{Вставляемая информация}'
Изменяем значение ячейки во всем столбце, с условием “сделать 2 раза”
UPDATE {имя_таблицы} set {имя_столбца} = '{Вставляемая информация}' limit 2
Изменяем значение конкретной ячейки, создаем условие по которому выбираем нужную нам ячейку
UPDATE {имя_таблицы} set {имя_столбца} = '{Новая инфа}' where {имя_столбца} = '{Старая инфа}'
Выборка (извлечение) ВСЕХ значений ячеек из столбца
SELECT {имя_столбца} FROM {имя_таблицы};
Выборка (извлечение) конкретного значения ячейки из столбца
Для того чтобы найти все сообщения пользователя с логином 'User1_1' нам нужно узнать его первичный ключ (т.е. узнать user_id, т.к. с помощью него таблицы связаны между собой), а уже по этому первичному ключу можно без труда выбрать все сообщения через условие where.
SELECT {имя_столбца} FROM {имя_таблицы} where user_id_author = (select user_id from users where user_login = 'User1_1');
Выборка (извлечение) данных из столбца с фильтром в обратном/стандартном порядке
Выбираем столбец с именем пользователя, указываем тип сортировки ORDER BY user_name desc, т.е. в обратном порядке по имени (desc - это обратный порядок, а asc - стандартный) и указываем количество нужных записей (LIMIT 3)
SELECT {имя_столбца} FROM {имя_таблицы} ORDER BY {имя_столбца} desc LIMIT 3;
Удаляем из таблицы строку с условием что в столбце user_login есть значение 'smirnov'
Удаляем из таблицы (users) все записи в которых поле user_login равно 'smirnov', если бы мы не указали условия WHERE user_login = 'smirnov', то все пользователи были бы удалены.
DELETE FROM users WHERE user_login = 'smirnov';