Всякие простые SELECT и JOIN используются относительно часто, и их забыть трудно, а всякие редкие запросы к БД MySQL иногда забываешь и приходится гуглить.
Пусть эта шпаргалка будет тут, возможно, еще кому-то пригодится.
1. Узнать версию MySQL:
SELECT VERSION();
2. Суммарный размер файлов (в таблице docs есть столбец size` INT(10), в котором указан размер файлов в байтах):
SELECT SUM(size)/1024/1024 FROM docs
3. Узнать права пользователя БД:
/* Eсли у пользователя есть разрешение на подключение к серверу из любого места: */
SHOW GRANTS FOR 'user'@'%'
/* Eсли у пользователя есть разрешение на подключение к серверу только по localhost: */
SHOW GRANTS FOR 'user'@'localhost'
/* Eсли у пользователя есть разрешение на подключение к серверу только через loopback: */
SHOW GRANTS FOR 'user'@'127.0.0.1'
4. Создание MySQL пользователя с супер-правами и возможностью подключением извне:
CREATE USER 'user'@'%' IDENTIFIED BY '4o8855454gJGiuub87YaVAvANo';
GRANT EXECUTE, PROCESS, SELECT, SHOW DATABASES, SHOW VIEW, ALTER, ALTER ROUTINE, CREATE, CREATE ROUTINE, CREATE TEMPORARY TABLES, CREATE VIEW, DELETE, DROP, EVENT, INDEX, INSERT, REFERENCES, TRIGGER, UPDATE, CREATE USER, FILE, LOCK TABLES, RELOAD, REPLICATION CLIENT, REPLICATION SLAVE, SHUTDOWN, SUPER ON *.* TO 'user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
SHOW GRANTS FOR 'user'@'%';
5. Узнать количество записей в таблице orders:
SELECT COUNT(*) FROM orders
6. Найти запись с самым КОРОТКИМ значение текста в столбце name таблицы docs:
SELECT * from docs d
ORDER BY LENGTH(d.name) LIMIT 1
7. Найти запись с самым ДЛИННЫМ значение текста в столбце name таблицы docs:
SELECT * from docs d
ORDER BY LENGTH(d.name) DESC LIMIT 1
Продолжение следует...