問題タブ [hql]
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.
sql - Group By クエリで HQL が SQL より優れている点
私はこの質問を「レポートタイプ」のクエリ(カウント、平均など、つまりドメインモデル自体を返さないもの)に集中させています.HQLを使用することで固有のパフォーマンス上の利点があるかどうか疑問に思っていました.二次キャッシュを活用できます。または、おそらくさらに良い - クエリ全体をキャッシュします。
明らかな暗黙の利点は、NHibernate がモデル マッピングについて既に知っているので、列名が何であるかを知っていることです。
他に知っておくべきメリットはありますか?
[私は NHibernate を使用していますが、この場合、Hibernate に適用されるものは NHibernate にも同様に適用されると思います]
java - Hibernate でカスタムクエリベースのコレクションマッピングを行う方法は?
非常に単純な一連のオブジェクトを持つようにマップされたオブジェクトがあります。ただし、私が本当にやりたいのは、そのマッピングにいくつかの基準を設定することです。現在のマッピングは次のとおりです。
ここで、関連するすべての op を取得するのではなく、完了していない、または完了している op だけを取得したいと考えています。Hibernate のドキュメントはこれについて非常に静かですが、いくつかの古いフォーラムの投稿が私に少し示しています。どうやら sql-query タグを使用できるようですが、それも私がやりたいことではありません。
HQLクエリでこれを行う方法はありますか? 単純なクエリで結果を絞り込み、active_ops や completed_ops などのいくつかのコレクション マップを作成したいだけです。
乾杯、ジェイソン
mysql - HQL での自己参照更新
HQL に次のクエリがあります。
Hibernate はクエリを正しく解析して SQL を生成しますが、データベース (MySQL) は次のエラーで失敗します。
FROM 句で更新対象のテーブル 'ProjectFile' を指定することはできません
問題は、更新されるテーブルが同じコンテキストでクエリされていることのようです。HQL クエリを書き直して、MySQL で正しく実行できる SQL を生成する方法はありますか? もう 1 つのアプローチは、中間テーブルを作成することです。これはまさに私が避けようとしているものです。
nhibernate - HQL または Criteria で DATEPART を取得していますか?
HQL または Criteria を使用して時間の DATEPART を取得するにはどうすればよいですか? 私はそれをググっていくつかのヒントを得ましたが、十分ではありませんでした。経験したことのある方がいらっしゃいましたら、教えてください。
前もって感謝します
c# - Hibernate クエリの Unicode 文字列
SQL では、次のような人物の名前を検索するクエリを作成できます。
このクエリは Unicode 文字で実行されます (Name 列とデータベースが Unicode サポートを処理するように設定されていると仮定します)。
Hibernate (NHibernate) によって実行される HQL に同様のクエリがあります。生成されたクエリは次のようになります。
残念ながら、HQL でリテラルの前に「N」を置くと、エラーが発生します。文字列内の Unicode 文字をエスケープしようとしましたが、まだ成功しません。
データベースは、Hibernate から Unicode 文字を受け入れて保存しています。オブジェクトに Unicode 文字列を正常に取り込み、Hibernate で保存し、データベースで検証することができました。カスタムクエリでユニコード文字列を使用できないのは少し奇妙に思えます (または、名前付きクエリも想定しています)。
これは Hibernate (Nhibernate) の既知の問題または制限ですか? HQLでユニコードをどのように使用しますか?
いくつかのサイトでは、Criteria クエリの使用を提案しています。私が取り組んでいるフレームワークの制約により、これは不可能です。
nhibernate - HQLselectでCASEステートメントを使用する
HQLで次のことを行う方法はありますか?
sql - Grails / Hibernateでカウントする方法:Message.countBy
本文の長さが0〜25文字のメッセージの数をカウントするにはどうすればよいですか?
私にとって残念なことにcountBy
、文字列パラメータを取りません。
hibernate - group by を使用した HQL クエリ
フィールドを持つ次のクラス構造 FlowerDAO があります (Hibernate を使用してマップされます):
ID
単価
名前
色
その色の最小単価を持つ各色の花を取得する hql クエリを作成するにはどうすればよいですか?
私はこれを試しましたが、うまくいきません
java - HQL-ページネーションの行識別子
HQLにROWIDやROWNUMなどの行を識別するためのキーワードがあるかどうか誰かが知っていますか?
HQLでページネーションを実装したいのですが、セッションオブジェクトを直接操作しないため、.setMaxResult()または.setFirstResult()を使用できません。したがって、Queryオブジェクトを使用せず、クエリを次のように作成するだけです。文字列を作成し、.find()メソッドを使用します。
クエリでLIMITとOFFSETを使用しようとしましたが、HQLはこれらのキーワードを無視しているようで、何があっても結果全体が返されます。
また、クエリに表示される「HAVING」句がサポートされていないため、Hibernate基準を使用できません。
私の最後の手段は、ROWNUM/ROWIDキーワードを使用して結果セットを制限することです。他に何か提案はありますか?