私がしたいことは、指定された月のデータベースですべての休日を取得することです。「月が唯一の句」
私は複数のソリューションを試してみましたが、どちらも機能しませんでした。私は教義で黒い魔法をやることで終わりました(ちょっと)。
public function getNbCongesByMonth($month){
$listOfEntities = $this->createQueryBuilder('e')
->select('count(e) as nb, SUBSTRING(e.cngDateDebut, 6, 2) as day')
->where('day = :month')
->setParameter('month', $month)
->getQuery()
->getResult();
return $listOfEntities;
}
が要求を正確な月のデータベースに「Conges」の量を返すことになっている:
は、ここに私の最後の試みです。この要求に
私はこのエラーを得た:
An exception occurred while executing 'SELECT count(c0_.CNG_ID) AS sclr0, SUBSTRING(c0_.CNG_DATE_DEBUT FROM 6 FOR 2) AS sclr1 FROM Conges c0_ WHERE sclr1 = ?' with params ["5"]:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'sclr1' in 'where clause'
私は、誰かが素晴らしいだろう解決策を持っているので、もしもうそれを行うためにどのように何のアイデアを持っていません。
ありがとうございます。
なぜダウンボートを説明できますか?私はここに新しいです、私は間違って何をしましたか? –
私はcngDateDebutがDateTimeだと推測しているので、これを他のDateTimeオブジェクトとだけ比較することはできますが、これは決して動作しません – Nickolaus
このようなクエリは不可能です。列エイリアスを使用することはできません)where節では決してありません。任意のSQLデータベースエンジンwhere節がselect節より前に処理されるからです。私は新しいモデルを開くことをお勧めします。ここでは、あなたのDBモデルを入れて、どのデータを取得したいのか、そして誰かがあなたにクエリを書くことができるかを例を挙げます。 – Miro