Articles of dql

Как экспортировать миллионы строк из MySQL в CSV через PHP без исчерпания памяти?

Поэтому у меня есть эта таблица: mysql> DESCRIBE table; +——-+——————+——+—–+———+—————-+ | Field | Type | Null | Key | Default | Extra | +——-+——————+——+—–+———+—————-+ | id | int(15) unsigned | NO | PRI | NULL | auto_increment | | unid | char(9) | NO | UNI | NULL | | | rs | varchar(255) | […]

Параметры в выражении выбора DQL (Symfony2 / Doctrine)

Я пытаюсь использовать внешние параметры в части SELECT DQL, но это не работает из-за ошибки. Что я пытаюсь: $query = $this->getEntityManager() ->createQuery(" SELECT me.column_one, :param_doesnt_work param FROM CompanyMyBundle:MyEntity me WHERE me.column_one = :param_one AND me.column_two = :param_two ")->setParameters(array( 'param_doesnt_work' => 'A static value', 'param_one' => 'some param', 'param_two' => 'another param', )); Я хотел бы […]

Как вернуть объект из DQL-запроса?

Я написал DQL-запрос в Doctrine 2: $qb->select('r.position') ->from('\Entities\Races', 'r') ->where($qb->expr()->eq('r.entrantId', ':entrant_id')) ->setParameter('entrant_id', $this->entrantId); $query = $qb->getQuery(); $aRaces = $query->getResult(); В настоящее время он возвращает результаты запроса в массиве следующим образом: Array ( [0] => Array ( [position] => 10 ) [1] => Array ( [position] => 4 ) ) Я хочу, чтобы результат возвращал массив […]

С Doctrine, какие преимущества от использования DQL над SQL?

Может ли кто-нибудь предоставить мне пару ясных (подтвержденных фактов) причин использовать / изучать DQL или SQL при необходимости пользовательского запроса при работе с классами Doctrine? Я считаю, что если я не могу использовать встроенную реляционную функциональность ORM для достижения чего-то, я обычно пишу собственный метод в расширенном классе Doctrine или DoctrineTable. В этом методе напишите […]

Doctrine запрашивает отдельный связанный объект

Я, вероятно, пропущу что-то очень простое и просто слишком уставился на него, но я не могу заставить этот DQL-запрос работать. Я получаю исключение: Cannot select entity through identification variables without choosing at least one root entity alias. Вот мой запрос. Пользователь имеет много-к-одному отношение к Группе. Обратите внимание, что это однонаправленное отношение! Это может не […]

Где в дискриминационных таблицах

Как выбрать все элементы из одного конкретного автора? Возможно ли это? Или как я могу редактировать объекты, если я хочу, чтобы многие типы элементов и пакеты предметов (элемент имел много элементов) тоже? Пункт /** * @ORM\Table() * @ORM\Entity * @ORM\InheritanceType("JOINED") * @ORM\DiscriminatorColumn(name="discr", type="string") * @ORM\DiscriminatorMap({ * "cd" = "ItemCD", * "dvd" = "ItemDVD", * "pack" […]

Использование COLLATE внутри Doctrine DQL Query (Symfony2)

Я не могу найти ничего, связанного с использованием COLLATE в DQL-запросе с Doctrine (и, конечно, это не работает). Моя конкретная проблема: У меня есть таблица с utf8_general_ci charset. У меня есть одно конкретное поле, в котором есть акцентированные символы (например, «á», «ű», «ő» и т. Д.), Основное сравнение с utf8_general_ci не может определить разницу между […]

Доктрина 2: результат запроса как ассоциативный массив

В моем классе Repository я использую следующий код для запроса: $query = $this->getEntityManager()->createQuery(" SELECT s.term, COUNT(s.term) AS freq FROM App\Entities\SearchTerm s GROUP BY s.term ORDER BY s.term ASC "); $result = $query->getResult(); В результате я получаю что-то вроде: array (size=4) 0 => array (size=2) 'term' => string '' (length=0) 'freq' => string '1' (length=1) 1 […]

Doctrine DQL, наследование таблицы классов и доступ к полям подкласса

У меня проблема с DQL-запросом и специализацией. У меня есть Entity, называемый Auction , который является отношением OneToOne к Item . Item – это mappedSuperclass для Film и Book . Мне нужен запрос, который мог бы помочь поисковой системе, позволяя пользователю искать аукционы с разными свойствами AND продавать предметы с разными свойствами (это часть AND […]

передать массив условий методу doctring expr () -> orx ()

Мне нужно построить DQL с QueryBuilder как это [QUERY]… AND WHERE e.type = x OR e.type = Y OR e.type = N […] У меня есть типы в массиве. Как передать этот массив в построитель запросов? $qb->andWhere($qb->expr()->orx(CONDITIONS)); Список типов будет динамическим, вызов $qb->andWhere в каждом цикле foreach будет делать только больше И WHERE больше нет […]