&コールユーザー定義関数をJPQLで記述することはできますか?JPQLでユーザ定義関数を書いたり呼んだりしますか?
答えて
JPA仕様自体ではサポートされていませんが、一部のJPA実装ではこのような拡張機能が提供される場合があります。
たとえば、Hibernateではを呼び出してDialect
をサブクラス化し、カスタムSQL関数を定義できます。多くの方言固有の関数はすでにこのように定義されています。
&コールユーザー定義関数をJPQLで記述することはできますか?
短い答え - 号
長い答えは、ネイティブ関数が非常に明確に定義された文法としてJPQLとして、JPQLクエリで参照することができないことです。例えば、JPQLクエリのSELECT句はBNF表記法を使用してJPA仕様で定義されている:
select_clause :: = SELECT [DISTINCT】たselect_item {たselect_item} *
たselect_item :: =のselect_expression [[AS] result_variable]
select_expression :: = single_valued_path_expression | scalar_expression | aggregate_expression | identification_variable | OBJECT(識別変数)| constructor_expression
constructor_expression :: = NEW constructor_name(constructor_item { constructor_item} *)
constructor_item :: = single_valued_path_expression | scalar_expression | aggregate_expression | identification_variable
aggregate_expression :: = {AVG |マックス| MIN | SUM}([DISTINCT] state_field_path_expression)| COUNT([DISTINCT] identification_variable | state_field_path_expression | single_valued_object_path_expression)
他のステートメントは同様に定義されます。許容される唯一の関数は、集計式のコンテキストで発生しなければならないAVG、MAX、MIN、SUM、およびCOUNTであることに気付くことができます。 JPQL文法にはユーザ定義関数のスコープがないため、ネイティブSQLクエリを使用してデータベースに存在するユーザ定義関数を呼び出さなければなりません。
- 1. )(使用したユーザ定義関数を繰り返し複製()またはsapply
- 2. ユーザ定義関数
- 3. jQueryはユーザ定義関数を呼び出して呼び出します
- 4. pysparkでspark SQLクエリからユーザ定義関数を呼び出す方法はありますか?
- 5. if文からユーザ定義関数を呼び出す方法
- 6. 関数呼び出し - this ==ウィンドウで、未定義ではありません。
- 7. 未定義の関数/関数が見つかりません
- 8. React `this.props`はユーザ定義関数で定義されていません
- 9. ユーザ定義関数(Excel)でのサブルーチンと値の呼び出し
- 10. ラムダ.NETでユーザ定義関数を呼び出す方法
- 11. ユーザ定義のPostgreSQL関数をリストする方法はありますか?
- 12. ユーザ定義関数を持つ辞書を使用できますか?
- 13. ユーザ定義関数を呼び出すときにpowershellで終了しないエラーをキャッチできません
- 14. OpenCPUにユーザ定義の環境変数がありません
- 15. Vimのユーザ定義関数
- 16. MATLABのユーザ定義関数
- 17. KeyError:ユーザ定義関数
- 18. ユーザ定義ドメインのURLを書き直してください
- 19. Sparkビルドカスタム列関数、ユーザ定義関数
- 20. Date.gettime()は関数ではありません。未定義です
- 21. ユーザ定義関数の戻り値型のSql Serverデータベースプロジェクトエラー
- 22. 関数定義が見つかりませんか?
- 23. RcppArmadilloユーザ定義関数を渡す
- 24. Python:まだ関数で呼び出された未定義の変数ですが、動作しますか?
- 25. JSPでユーザ定義関数を記述して呼び出す方法は?
- 26. C++でMySQLユーザ定義関数
- 27. Cでユーザ定義の関数とリンクリスト
- 28. UniDataでユーザ定義関数がサポートされています
- 29. 関数の戻り値は定義されていません
- 30. Python関数 - 戻り値が '定義されていません'