問題タブ [criteriaquery]
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.
java - この特定の JPQL クエリを SELECT MAX() で CriteriaQuery に書き直すにはどうすればよいですか?
私は JPA を初めて使用し、特定のクエリを理解する際に問題が発生しました。CriteriaQuery に書き直しましたが、結果と SQL に変換されたクエリが正しくありません。
背景の状況: ストア トランザクション (移動) のテーブルがあり、ストア内の現在の金額はすべての変更の合計として定義されます。ここで、最後の動きを選択して表示したいと思います。これには、店舗での結果の金額に関する情報も含まれているためです。
したがって、これは JPQL のクエリです。
次の CriteriaQuery に書き直そうとしました。
生成される誤った SQL クエリは次のとおりです。
サブクエリに二重交差結合がある理由がわかりません。助けてくれてありがとう!
java - 逆関係のないポリモーフィック CriteriaQuery
次の EJB 構造があります。Animal
とについては不思議に思わないでくださいInventory
。これらのクラスは、単純化された方法で構造を示すためにここにあるだけです (更新:よりわかりやすい例を作成するためにクラス名を変更しました。 の別の実装はIdTag
かもしれませんBarcodeId
)。IdTag
からAnimal
またはに逆の関係がないことに注意してください。 は一意でInventory
あると仮定しましょう。基準クエリを使用したポリモーフィック Hibernate オブジェクトの取得とHibernate ポリモーフィック クエリRfidTag.code
を読みましたが、これらの議論は私の質問に答えていないようです。
今、私はどちらAnimal
かInventory
をクエリしRfidTag.code
たいAnimal ejb = bean.fEntityWithRfidTag(Animal.class,"myRfIdCode");
残念ながら、次のエラーが発生します。
これは継承に関連していると思いますIdTag
->RfidTag
そして、Animal
についてのみ知ってIdTag
おり、RfidTag.code
. このようなクエリは可能ですか?
java - この Hibernate Criteria Query が「明示的な選択がなく、暗黙的な選択が決定されていません」で失敗するのはなぜですか?
Bucket というエンティティがあり、"Bucket_1" に等しい "Name" プロパティで格納された Bucket があるかどうかを判断する条件クエリを作成しようとしています。したがって、基本的には存在するクエリです。
Bucket クラスについて特別なことは何もありません。単純に不可能です:
クエリについては、これまでのところ次のとおりです。
クエリを実行すると、最後の行で次の例外が発生します。
私は多くのことを調査しましたが、説明および/または修正された同じエラーを持つ人を見つけることができませんでした.
私もこの方法を試しました:
しかし、まったく同じ例外が発生します。
なぜ私がこれを取得したのか、このクエリを修正する方法を知っている人はいますか?
ありがとうございました!!エドゥアルド
アップデート:
次の方法で存在するクエリを作成できました。
その結果、次のような奇妙な SQL が生成されました。
外部クエリの結果はブール値であり、一致するエンティティではありません。
私はこれが機能することを知っています。私は今、それを「適切に」行う方法を学ぼうとしています。方法があると信じています...
jpa - 任意の JPA CriteriaQuery からの結果のカウントの取得
私が作業しているレイヤーのコードが CriteriaQuery オブジェクトを受け取るという問題があります。クエリに関するその他の情報は事実上ありません (クエリが返すオブジェクトのタイプまたはオブジェクト リストについては推測できます)。 .
私がやりたいことは、SELECT count(*) from ([CriteraQuery の SQL バージョン]) のようなものです。
新しい CriteriaQuery を作成し、CriteriaQuery パラメータをサブクエリとして使用しようとしましたが、その方法が見つかりませんでした。
CriteriaQuery を分解して適切な count() クエリを作成しようとしましたが、where 句のさまざまな部分を特定できませんでした。
CriteriaQuery から生成された TypedQuery から SQL ステートメントを取得する方法が見つかりませんでした。
したがって、次のようなものが不足しています。
CriteriaQuery によって返されるオブジェクト/行の数を決定する方法はありますか?
これは、JPA 2 では、CriteriaQuery を使用して結果をカウントする方法とは異なります 。その質問は、CriteriaQuery を構築しているケースを扱います。この場合、構築された CriteriaQuery が与えられます (例: public int getCount( CriteriaQuery query ))。
jpa - 複雑な多対多のJPACriteriaQuery
私には2つのエンティティ、AblumとImageがあり、これらは多対多の関係にあります。すべてのアルバムとそれらが持っている画像の数を取得するための基準クエリを作成したいと思います。最初にすべてのアルバムを取得してから結果をループしてカウントを取得したくないのは、SQLリクエストが非常に多いためです。私は2泊しましたが、完全に迷子になりました。解決策が見つからない場合は、SQLを使用するためにフォールバックする必要があります。
java - 動的リストを使用してjpa 2.0で基準クエリを作成する
JPA 2.0 で criteriaQuery を作成しているときに少し混乱しています。
前提条件:
私は、温度/風/期間/などのようないくつかのオプションを使用して、ユーザーが (たとえば) 気象観測所のいくつかのチェックボックスをマークできる GUI を持っています...
ここで、SQL データベースから選択したアイテムだけを選択し、それをオブジェクト/マップ/リストとして返して DataModel を構築するように criteriaQuery を設定したいと考えています (これは、いくつかの素数チャートを生成するために使用されます)。
私がこれまでに持っているもの:
criteriaBuilder、criteriaQuery、およびマッピング クラス:
述部のセットアップ:
そして、クエリを実行して結果を取得する最後のステップ:
この時点で、複数選択基準を選択内容で満たすための最良のアプローチが何であるかはわかりません。List sel から cq.multiselect() にすべてのアイテム/選択を動的に挿入したいと思います...
どんなアイデアでも大歓迎です!
私のWHERE句を連結してクエリを実行する:
私が達成したいことを要約するために疑似SQLクエリに従ってください:
java - 条件クエリ、自分がメンバーではないすべてのグループを検索
Group と GroupMember の 2 つのエンティティがあります。グループは、名前とその他のプロパティを持つグループのように聞こえます。グループのメンバーは、GroupMember エンティティにマップされます。このエンティティには、ユーザーと、ユーザーがメンバーであるすべてのグループのグループのエントリがあります。それらは次のようになります。
定義済みのプロパティがあり、現在のユーザーが属していないすべてのグループを返す条件クエリを作成しようとしています。私のクエリは次のようになります。
ここでのユーザーは、現在のユーザーを表します。私と同じグループの一部である他のメンバーがいる場合、結合によりクエリ結果に含まれるため、このクエリは機能しません。正しいクエリはどのように見えるべきですか? 私はまだ条件クエリ API に詳しくありません。
java - JPQL クエリ: オブジェクトの 2 つのフィールドの AND である単一のブール値を選択する
MyData
プライマリ識別子フィールド ( BigDecimal
「primaryID」と呼ばれる型) と、Boolean
「fieldA」および「fieldB」と呼ばれる 2 つのフィールドで呼び出されるJPA アノテーション付きクラスがあるとします。私がやりたいことはfieldA AND fieldB
、特定のMyData
インスタンスを選択する JPA クエリを作成することです。
このentityManager
クエリを実行すると、次のようになりますorg.hibernate.hql.ast.QuerySyntaxException: unexpected AST node: and near line 1...
。builder.isTrue
これにより、ブール値とオブジェクトの 2 つのフィールドを取得することを指定するには、(メソッド以外の) 何か別のものが必要であると考えるようになります。このクエリをどのように作成する必要があるかについてのアイデアはありますか?
hibernate - 特異な属性を持つ JPA 結合条件クエリ
次のような 2 つのエンティティがあります。
私は何かをする必要があります
JPA基準でこの複数選択が必要なため、yJoinが必要です。
私はそれを行うことができますか?それが不可能な場合、これを解決するために何ができるでしょうか。覚えておいてください! すべてのentityY要素ではなく、EntityXで「entityYId」のみが必要です。
ありがとう!
hibernate - HibernateCriteriaクエリをJPA2Criteriaクエリに変換する
次のHibernate3.xCriteriaクエリがあり、HibernateJPA2.0クエリに変換したいと思います。
次のようにコードを書き直そうとします。
しかし、JPA 2基準クエリは、入力パラメーターとして日付またはカレンダーを受け入れるCriteriaBuilder.ge(...)メソッドをサポートしていないようで、コードは最初から失敗しているようです。
Hibernateセッション基準の機能を保持および適応させるためのアドバイスが必要です。