0

このSQLクエリをDQLクエリに変換しようとすると多くの問題が発生します(私はSymfony2を使用しています)。

SELECT d.* FROM Document d JOIN DocumentType dt ON dt.id = d.document_type_id WHERE (d.dateFinal - INTERVAL dt.renewal SECOND) > NOW();"

どうもありがとう !

4

1 に答える 1

1
  • Documentデータベースフィールドの代わりに、自分とDocumentTypeクラスのフィールドを使用する必要があります。

  • 結合は、ドキュメントの関連付けフィールドに名前を付けることによって行われます(のようなものd.documenttype

  • これらのMySQL日付関数の場合:少なくとも私が知る限り、カスタムDQL関数を作成する必要があります。そのリンクの後ろに関数の例がありINTERVALます。これは、代わりにネイティブSQLクエリを実行するポイントである可能性があります。

SELECT d 
FROM MyProject\Model\Document d
    JOIN d.documenttype
WHERE [...your own DQL functions here...]
于 2012-07-05T20:05:50.117 に答える