- 1
SELECT `id`,`title`,`text`,`pubTime`, `visible`, `cat` , (SELECT `name` FROM `news_cat` WHERE news_cat.id=news.cat) AS `category` FROM `news`
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−124
SELECT `id`,`title`,`text`,`pubTime`, `visible`, `cat` , (SELECT `name` FROM `news_cat` WHERE news_cat.id=news.cat) AS `category` FROM `news`
DBdev 12.03.2012 17:44 # 0
Оптимизатор запросов все-равно сделает как надо.
Говнокод только в том, как написан этот джоин?
rO_ot 12.03.2012 18:31 # 0
eth0 12.03.2012 20:14 # 0
3.14159265 12.03.2012 20:18 # 0
Подзапросы нужны, иногда, но не в SELECT и не в WHERE, но в FROM. Я уже говорил об этом раньше.
>нам за подзапросы в селекте всыпали живительных пиздюлей
А вот это правильно.
DBdev 12.03.2012 20:54 # 0
И чем же плох подзапрос в WHERE этого примера:
SELECT * FROM SomeTable WHERE SomeField IN (SELECT SomeField FROM AnotherTable)?
А чем плох подзапрос в EXISTS?
*достал поп-корн, уселся поудобнее*
guest 13.03.2012 11:01 # +1
--
rO_ot
DBdev 13.03.2012 11:28 # +3
Почему-то у всех такие категоричности в отношениях к подзапросам. А как приводишь годные примеры, так сразу "а вы тут не так написали, надо вот так-то и так-то". Если не все подзапросы зло, то и не надо этого писать. А если Вас лично отучили их использовать, возможно, это говорит о том, как Вы их использовали.
Складывается впечатление, что подзапросы - это граната, которая в руках обезьяны становится опасной.
3.14159265 23.04.2012 21:16 # +1
Хорошо, а если подзапрос используется в таком виде:
Как показывает практика left outer join и последующий is null в таких случаях отрабатывают медленей.
По чем зря будем отрывать людям руки?
eth0 12.03.2012 18:16 # +1
bugmenot 12.03.2012 19:19 # +3
guest8 09.04.2019 12:49 # −999