問題タブ [dql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
154 参照

mysql - 認証のためのDoctrineクエリ

次のクエリを検討してください。

これにより、「グループ名」に関係なく「ユーザー名」を持つユーザーが返されます。「グループ名」関係がない場合にのみユーザーを返す必要があります。

0 投票する
4 に答える
18025 参照

doctrine - フェッチ結合コレクションで教義クエリを制限しますか?

ブログ投稿とそのコメントを返す教義クエリがあります。

結果を10件のブログ投稿に制限したいと思います。DQLのドキュメントによるとsetMaxResults()、コレクションをフェッチして参加するクエリ(この場合はコメント)では正しく機能しません。

クエリに、結果制限メソッドを指定するフェッチ結合コレクションが含まれている場合、期待どおりに機能していません。Set Max Resultsはデータベースの結果行の数を制限しますが、フェッチ結合されたコレクションの場合、1つのルートエンティティが多くの行に表示される可能性があり、指定された数の結果よりも効果的に水分補給されます。

フェッチに参加したコレクションを含むDoctrineクエリを適切に制限するにはどうすればよいですか(この場合、結果を10のブログ投稿に制限します)。

0 投票する
2 に答える
491 参照

php - DQL-関連するエンティティをフェッチする

通常はエンティティを遅延ロードするだけですが、今はノードを配列としてフェッチできるDQLを作成する必要があります。いくつかのクエリを試しましたが、機能させることができません。以下に2つの例を示します。

INSTANCE OFが実際に何をするのかわかりませんが、機能しませんでした。私のアノテーションにはデータベーステーブルだけが持つnodeType_idがないため、nodeType_idの使用も機能しませんでした。

では、これに対する正しいアプローチは何ですか?

0 投票する
0 に答える
1118 参照

php - Symfony2 クエリ エラー (Doctrine2 で同じ動作)

Doctrine2 と Symfony2 の両方を使用していますが、Symfony2 は Doctrine2 (「スタンドアロン」バージョン) で達成できるタスクで失敗します。

Doctrine2 では:

私は2つのクラス、結果、チケットなどを持っています:

私のindex.phpで使用します

そして、正しい出力が得られます

現在 Symfony2 では、エンティティに次の定義を使用しています。

これで、テスト機能を備えたコントローラーをセットアップしました。

この時点で、次のように最後のクエリを実行しようとするとエラーが発生します。

SQLSTATE[42000]: 構文エラーまたはアクセス違反: 1064 SQL 構文にエラーがあります。1 行目の 'WHERE t0_.id = 1' 付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。

webdebugger から、PDO から次の構文を取得します。

だから私はLEFT JOINの後に何かが欠けていると思うので、そもそもエラーが発生するのはなぜですか?

私は何を間違っていますか?/どうすればいいですか?

0 投票する
6 に答える
23688 参照

php - 教義2-where句で識別子列を使用する方法

私は次のようなwhere句で識別子列を使用しました:

エラーが発生しました:「メッセージ:[Semantical Error] line 0、col 73 near'format ='image'':Error:Class Entities \ File \ AbstractFile has no fieldorassociationという名前のformat」

where句で識別子列を使用するにはどうすればよいですか?

ありがとう。

0 投票する
1 に答える
4803 参照

escaping - エンティティ名としてのDoctrineDQL予約語

Doctrine2を使用します。

'size'というエンティティがあり、データベースからこれらのエンティティをプルするために(QueryBuilderを使用して)DQLを形成しようとしています。

「サイズ」は予約語のようです http://www.doctrine-project.org/docs/orm/2.0/en/reference/dql-doctrine-query-language.html#id3

エンティティ名をエスケープする方法が見つかりません(バッククォートと二重引用符を試しました)

上記を実行すると、次のようになります。

マニュアルが予約語のエスケープについて説明しているように見えます-それは列とテーブルの名前を参照しています。誰かがこれに光を当てることができますか?予約された(DQLの)単語をエンティティ名として使用することは不可能ですか?

ありがとう

0 投票する
1 に答える
3221 参照

php - Symfony Doctrine クエリの行番号

ラップタイムのデータをデータベースに保存しています。データは距離、時間、平均速度、最大速度で構成されています。

設定したクエリの上位 10 人を表示するリーダーボードを表示しようとしています (合計で最も遠くまで行った人、最高の平均時間など)。ただし、トップ 10 の下には、リーダーボードにログインしているユーザーを表示したいと考えています。これを行うには、同じクエリを実行して結果を並べ替え、ROW NUMBER を追加して位置を取得しようとしています。

私はDoctrine ORMでsymfony 1.4を使用していますが、クエリで行番号を取得する方法を一生理解できません。次のようにSQLで実行できることを知っています:

しかし、Doctrine Symfony では動作しません。

これを行う方法について誰かアイデアがありますか? (またはそれについての別の方法でさえ)

前もって感謝します。

0 投票する
1 に答える
1480 参照

php - Doctrine query to update users table

I have a form with the following fields:

  • email
  • password
  • url
  • responsable
  • pais (this is a multicheckbox)
  • role

And I've created this method within the Model_Users class

The problem is that this isn't really updating... and if I do something like echoing $q->getSqlQuery() the SQL query I get is UPDATE users SET email = ?, password = ?, url = ?, responsable = ?, role = ? WHERE (id = 150).

I'm guessing I cannot use a foreach loop to get this right,... so what would be the way around it?

0 投票する
3 に答える
7052 参照

mysql - DQLに参加してカウントする

MySQLコマンドを使用していますが、DQLで同等のコマンドを見つけることができません。コメントの多い投稿のリストを取得しようとしています。これがMySQLコマンドです:

結果は次のとおりです。

DQLでは、次のようになります。

しかし、これは与えます:

50がどこから来たのか、なぜ2つの結果に違いがあるのか​​わかりません。この参加をDoctrineで機能させる方法を教えてください。

0 投票する
2 に答える
13355 参照

insert - DQL で挿入クエリを作成する方法

私は symfony を使用していますが、doctrine:dql タスクを使用して簡単な挿入を行う方法を知りたいです。