Показать сообщение отдельно
Старый 23.06.2015, 08:53   #15  
macklakov is offline
macklakov
NavAx
Аватар для macklakov
 
2,129 / 916 (35) +++++++
Регистрация: 03.04.2002
Lightbulb
Цитата:
Сообщение от trudel Посмотреть сообщение
а что страшного в select ?
Да собственно самое страшное в нем то, что его путают с sql select.
И поэтому вариант в цикле перебрать значения, которые вы хотите запихать в IN и вызвать select a where a.field1 == value соответствующее число раз противоречит всем инстинктам человека более-менее знающего sql. Даже у опытных аксапщиков такой подход вызывает интуитивное неприятие. А между тем, при правильной настройке кэширования AOS отрабатывает зацикленные запросы не сильно хуже одного, монструозного. А читать, писать и дебажить циклы несравнимо легче чем sql.
Похожесть конструкции на sql настолько взрывает мозг, что даже в официальные best practice внесли идиотское требование в x++ select указывать список выбираемых полей. Это вопервых приводит к трудноуловимым runtime багам, вовторых отрубает кэширование, из-за чего резко падает производительность системы (хотя скорость исполнения конкретного запроса действительно может вырости).
На самом деле x++ select это не запрос, а factory метод. Но синтаксис сбивает с толку.
__________________
Isn't it nice when things just work?

Последний раз редактировалось macklakov; 23.06.2015 в 08:59.
За это сообщение автора поблагодарили: mazzy (2).