0

データベースでいくつかの tsk を取得し、フィールドでバイナリ操作を使用してそれらを並べ替える必要があります。ここに私が欲しいものがあります:

    $query = $this->getEntityManager()->createQueryBuilder()
                    ->select('t')
                    ->from('MyBundle:Task', 't');
    $query->orderBy('BIT_AND(t.options, 1)', 'DESC');

「オプション」ごとに 1 つのフィールドを持ちたくないので、すべてのオプションはフィールド内の「ビット」です。

前のコードは機能しません。私はやろうとしました:

    $query = $this->getEntityManager()->createQueryBuilder()
                    ->select('t', 'BIT_AND(t.options, 1) as myoption')
                    ->from('MyBundle:Task', 't');
    $query->orderBy('myoption', 'DESC');

しかし、この場合、私は関係のオブジェクトを失っています...私のタスクはユーザーに関連しているため、 $task->getUser() (またはより正確には twig : task.user) を実行したい

だから私の質問は: - 二項演算子でデータをソートするにはどうすればよいですか? - 複数選択を行っている場合、どうすればオブジェクトを正しくハイドレート状態に保つことができますか?

どうもありがとう !

4

1 に答える 1