LINUX.ORG.RU

[минорщина] SQL code style

 


0

2

У кого какой и почему? Вот мой вариант: http://pastie.org/2826618

Мои соображения: upper case не использую, так как считаю его эхом из монохромных 70-х; длинные выражения разбиваю переносами; список колонок в select печатаю каждый на новой строке, так как в них легко запутаться, если писать в одну строку.

Критика, предложения. Дискас вобщем.

★★★★★

Не так часто доводилось писать на sql-ях, поэтому особенно не морочился стилем, лепил всё в 2-3 строках.

Но твой стиль понравился - даже и не задумывался, что select так аккуратно и ясно записать можно. :)

Единственное примечание: если выборка по 2-3 столбцам, то нет смысла их в столбик писать, имхо, лучше оставить

select column1 c1, column2 c2 from table1 t1

в одну строчку. А дальше писать так, как у тебя.

UPPER CASE ужасен на мой взгляд, поэтому тоже им не злоупотребляю.

Итог: очень хороший стиль.

OldFatMan
()

таб сделать в 4 пробела. в остальном то же самое.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от roller

Ну это я для примера их указал. В жизни их довольно редко использую - там где без них нельзя. Например при использовании with.

dizza ★★★★★
() автор топика

оформляю аналогично (переносы, нижний регистр). еще в клаузе where условия по строкам разбиваю, чтобы потом проще править было. с недавнего времени пробую select сделать левее относительно всех остальных клаузов. не помню точно почему принял такое решение, что-то нечитаемое в коде попалось, когда несколько запросов были друг за другом. неудобно, но, возможно, просто привычка.

winlook38 ★★
()

Спасибо, ТС! Пришлось в последнее время писать сложные запросы и по незнанию уже замучался ковыряться в длиннющих строках, разбитых абы как лишь бы в экран помещалось.

staseg ★★★★★
()

Тогда уж что-то типа:

select
   column1 c1
  ,column2 c2  
--  ,column3 c3  
  ,column4 c4  
  ,column5 c5  
--  ...
from
  table1 t1
  left join
  table2 t2 on t1.id = t2.id 
  left join
  table3 t3 on t1.id = t3.id
where
  t1.column1 > 20 
  and 
  t1.column2 < 10
order by
  t1.column2 desc
limit 10

Neksys ★★★
()

иногда приходится писать запросы, стыдно стало за себя глядя на Ваш скрин

Vernat ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.