На текущем проекте есть Настоящие DBA, и я несколько раз удивлялся SQL-запросам, которые они пишут. В частности, хочу записать две вещи, которых я не знал о SQL (и не буду использовать сам в будущем).
JOIN через запятую
SELECT thing_a, thing_b FROM table_a, table_b WHERE table_a.id = table_b.foreign_key_id
.
Это join, условие которого написано в where. Это старый стиль, его ещё называют theta-style join.
В целом, считается устаревшим и менее очевидным (лично я привык к обычному JOIN table ON (table_a.field = table_b.field
; забываю про существование JOIN table USING (field)
).
Создал SQLFiddle с примером.
Ещё есть неплохой пост-сравнение.
ORDER BY 1 / GROUP BY 1, 2, 3
Числа ссылаются на порядок получившихся колонок.
На мой взгляд, это очень хрупкая ерунда — вдруг кто-то добавит ещё одно поле в запрос.