В отличие от того же Python, где неверный отступ - это смертный приговор для скрипта, SQL стерпит почти любое ваше извращение. Можно написать хоть весь запрос в одну строку, хоть лесенкой - СУБД все равно. А вот вашим коллегам - нет 🤓
Оформление SQL запросов - это бесконечный повод для споров. В каком регистре писать, ставить запятую в начало или конец строки, где ставить отступы, писать в группировке перечисление столбцов или их номера, писать ли 1=1 первым условием и так далее
На моем первом месте работы аналитиком была СУБД PostgreSQL, в которой действует “диктатура нижнего регистра” (при создании объектов БД, Postgres переводит их названия в нижний регистр) - поэтому для удобства все просто писали весь код маленькими буквами
select
created_date,
count(distinct id) as order_count
from orders
where user_id = 12345
group by 1
На втором месте работы я встретила СУБД Snowflake с “диктатурой верхнего регистра”, поэтому все для удобства писали запросы капсом. Сначала было очень непривычно, как будто я ору на базу🤓 Там я еще полюбила ставить запятые в начало строки, хотя раньше считала, что это что-то для извращенцев
SELECT
CREATED_DATE
, COUNT(DISTINCT ID) AS ORDER_COUNT
FROM ORDERS
WHERE
USER_ID = 12345
GROUP BY 1
На последующих работах я перешла к классике и стала писать капсом только ключевые слова 👀 И нет, мне не лень переключать регистр
И могу честно признаться, что когда на работе читаю чужой SQL запрос, который написан сильно вразрез с моим пониманием прекрасного, у меня слегка дергается глаз 😐 Не подумайте, я не SQL-снобка 💅 Но читаемость некоторых стилей крайне сомнительна
Делитесь в комментариях, своими SQL предпочтениями и красными флагами!
#sql_анна_в_данных