- 1
http://pastebin.com/YSWwKmGb
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−165
http://pastebin.com/YSWwKmGb
Кроме как линком не влезает. Но оно того стоит...
От рук DBA?
мышкопрограммирование на sql
откуда 3.2 ? Деление ж целочисленное
если серьезно
этот запрос переписанный должен уложиться в строк 100
сколько программист с з/п 100к рублей со знанием и пониманием схемы должен его делать?
весь день?
или, может, всё таки около часа?
Ну вот, новые условия появляются. А скорость переписывания как соотносится со скоростью написания?
запрос должен быть изначально правильно сделан
тут даже никакого рокетсайнса нет - тупейшие джойны и фильтры, сел и написал
нет ни оконных, ни аналитических функций по партициям, ни иерархических запросов с эскалацией свойств детей наверх по иерархии - тут же даже думать не надо, можно даже на пинг-понг с говнокодом в процессе отвлечься и всё равно сделать нормально с первого раза
достаточно понимать хоть немного в схеме и в поставленных целях запроса
вот кстати в Испании король из-за этого и отрекся от престола
прямо как устойчивость по Ляпунову
Эх, говорилось еще лет 5 назад, когда они только голову подымали - что всякие ОРМы, генерирующие запросы - зло.
Нет же, говорили адепты - оно сможет подстраиваться под конкретную базу, и оптимизировать запрос под конкретный диалект, аки jit.
- мам, купи мороженое
LINQ
Ну кстати да. Он же изначально был типа декларативный, а потом некоторые светлые головы туда любимую императивщину стали тулить.
понятное дело, что я их использую только для выбора данные из справочника, или выбор по ключу... короче, проблем с этим нет.
если же логика сложная - используй хранимые процедуры. EF позволяет методы маппить на процедуры.
а distinct в подзапросах?
а мейджик подстановки вместо null то 0, то 1, то наоборот - из нуля в null?
так же как и distinct, в linq такое есть.
например
получился из