Шпаргалка MySQL

Исключение дубликатов

  • select distinct name from registration

Упорядочивание записей по возрастанию/убыванию/по номеру столбца

  • select * from registration order by id
  • select * from registration order by id desc
  • select * from registration order by 2

Максимальное/минимальное значение поля

  • select max(id) from registration
  • select min(id) from registration

Сумма всех значений/среднее значение

  • select sum(id) from registration
  • select avg(id) from registration

Конструкция in

  • select * from registration where id in ('1','10','100')

Вывод пустых/непустых значений

  • select * from registration where birthday is null
  • select * from registration where birthday is not null

Вывод значений приблизительно соответствующих нужным

  • select * from registration where name like 'A%'
  • select * from registration where aboutme like '%I like%'

Выбор случайной строки в MySQL

  • select * from Table order by RAND() limit 1

Вставка

  • INSERT INTO tbl_name (col1,col2) VALUES(15,col1*2);

Замена, если запись существувет

  • INSERT INTO {ast_user} (uid, company) VALUES (%d, '%s') ON DUPLICATE KEY UPDATE company = '%s'

Сгруппировать строки в столбце

  • SELECT DISTINCT name as name1, (select CONVERT(GROUP_CONCAT(id) USING UTF8) from test where name = name1 )as pet_id FROM test
  • -- GROUP_CONCAT(pet SEPARATOR '::')

[http://www.mysql.ru/docs/man/Functions.html Справочник по MySQL]

Tags for tips: