ПС. потому что условие "e.salary > ..." выглядит единым логическим блоком (зарплата выше средней по айти). ппс. я для примера сократил вложенный(сам запрос получился не корректным, уже не могу поправить, но главное - суть)
т.е. блок join понятен логически, что за ним будет таблица и связь и логический блок=строка воспринимается естественно, единым целым, а если блок бить на подблоки, то это уже иерархическая структура слишком ветвистая, мозгу сложнее дробить и воспринимать. Иначе говоря, весь блок join выглядит воспринимаемым за один раз, поэтому дробить его не вижу смысла.
select
e.first_name,
e.last_name,
e.salary,
d.name department_name,
j.name job_name
from
employee e
join departments d on d.id = e.dept_id
join jobs j on j.id = e.job_id
where
d.name = 'IT' and
j.name = 'Engineer' and
e.salary > 100;
Но, если строка в селекте или другом блоке достаточно короткая, то ее помещаем в право, например
select e.first_name, e.last_name, e.salary, d.name department_name
from
employee e
join departments d on d.id = e.dept_id
join jobs j on j.id = e.job_id
where
d.name = 'IT' and
j.name = 'Engineer' and
e.salary > 100;
или так, не принципиально
select
e.first_name, e.last_name, e.salary, d.name department_name
from
employee e
join departments d on d.id = e.dept_id
join jobs j on j.id = e.job_id
where
d.name = 'IT' and
j.name = 'Engineer' and
e.salary > 100;
Или с вложенными, когда вложенный короткий проще в строку его взять
select
e.first_name, e.last_name, e.salary, d.name department_name
from
employee e
join departments d on d.id = e.dept_id
join jobs j on j.id = e.job_id
where
d.name = 'IT' and
j.name = 'Engineer' and
e.salary > (select avg(se.salary) from employee where d.name = 'IT');
Служебные слова выделяются цветом и так, а верхний регистр напрягает глаза(субъективно).
В разбиении секции join на несколько строк тоже не видно необходимости, т.к. есть тоже цветовое разделение. При таких частых переносах где только можно текст превращается в простыню, которую не видно и листать приходится.
В целом код должен быть легко читаемым на логическом уровне с равномерным заполнением по горизонтали и вертикали(гармония)
Чет я не понял, всё что нужно есть ноутах (в том же вскоде), да и удобства космические
ПС. потому что условие "e.salary > ..." выглядит единым логическим блоком (зарплата выше средней по айти). ппс. я для примера сократил вложенный(сам запрос получился не корректным, уже не могу поправить, но главное - суть)
т.е. блок join понятен логически, что за ним будет таблица и связь и логический блок=строка воспринимается естественно, единым целым, а если блок бить на подблоки, то это уже иерархическая структура слишком ветвистая, мозгу сложнее дробить и воспринимать. Иначе говоря, весь блок join выглядит воспринимаемым за один раз, поэтому дробить его не вижу смысла.
Итак, цель - равномерность, понятность, блочность
Но, если строка в селекте или другом блоке достаточно короткая, то ее помещаем в право, например
или так, не принципиально
Или с вложенными, когда вложенный короткий проще в строку его взять
Служебные слова выделяются цветом и так, а верхний регистр напрягает глаза(субъективно).
В разбиении секции join на несколько строк тоже не видно необходимости, т.к. есть тоже цветовое разделение. При таких частых переносах где только можно текст превращается в простыню, которую не видно и листать приходится.
В целом код должен быть легко читаемым на логическом уровне с равномерным заполнением по горизонтали и вертикали(гармония)
Концовка понравилась! Жизнь на кайфе -> вовлеченность и заинтересованность -> взаимовыгодный результат.