и qb в ORM (Doctrine Query Language в других случаях) от qb для базы тоже (особенно контекст беседы).. и я всееще и qb от orm не отличаем
Зачем еще одну??? А как же потом переименовать поле и разбивать на 2? В двух моделях???почему одна? нужна напиши еще одну
вероятно тут ты прав, но это меньшее из зол? нет? подскажи способ сделать лучшеА как же потом переименовать поле
Ну, во-первых, тут лукавство, ибо этот qb связан с ORM, а о нем речи не шло, ну и тут простота твоей записи скрывает за собой еще десятки строчек описания связей в моделях (https://phpclub.ru/talk/threads/nested-sets-и-data-mapper.86640/#post-772696 - вроде вот такой порнографии). И, во-вторых, это все еще слишком простой запрос для того, что бы ощутить разницу. Чем сложнее запрос, тем виднее будет разница и тем печальнее попытка выразить нормальный структурированный язык sql в какой-то пхп псевдокод ради непонятно чего.вероятно ты qb не видел еще и рассуждаешь рамками https://spiral.dev/docs/database-query-builders
хочешь на sqlэтой цепочки из qb https://cycle-orm.dev/docs/query-builder-basic посмотретьPHP:return $this->select()->with('subtree')->where('subtree.id', $id);
Код:SELECT `node`.`id` AS `c0`, `node`.`pid` AS `c1`, `node`.`name` AS `c2` FROM `node` AS `node` INNER JOIN `node` AS `node_subtree` ON `node_subtree`.`tree_id` = `node`.`tree_id` AND (`node_subtree`.`lft` > `node`.`lft` AND `node_subtree`.`rgt` < `node`.`rgt` ) WHERE `node_subtree`.`id` = ?
разве это важно?Ну, во-первых, тут лукавство, ибо этот qb связан с ORM
эта порнография ничто иное как декларация, там ничего сложного нет, зато позволяет избавится от реальной порнографии, и уже по этой причине, мне было бы пофиг как это называетсявроде вот такой порнографии
Да, конечно. Без orm твой запрос выраженный в виде qb выглядел бы иначе - сильно сложнее.разве это важно?
я не об этом, я о том что не важно как устроен qb, важно какой профит.Без orm твой запрос выраженный в виде qb выглядел бы иначе
умноиспользования SQL со сложными структурами
EAV-структурой
запросы включают в себя join 5ти одних и тех же таблиц с фильтром по флагам-статусам
запросы на 2 экрана
Писать SQL сейчас намного проще в plain tex
Не совсем. ORM - это паттерн для маппинга внутреннего состояния объектов на таблицы и поля в РСУБД и обратно. Если "стандартными запросами" считать запросы, которые ORM генерирует для персистенции, то, ну да.ORM - паттерн автоматизации для стандартных запросов.
Именно. Написать базовый запрос на sql. И добавлять к нему блоки через qb. Или убирать что-то не нужное из него.Удобно выделить несколько типичных блоков, и добавлять условия в запрос модульно по контексту.
QB - это средство для пошагового построения сложных объектов, чьё создание может быть разнесено по разным местам. Проблему повторного использования он никак не решает.QB нужен не для того, чтобы сделать написание и чтение запросов проще, а для повторного использования SQL со сложными структурами базы.