タイトルを次のように書き換えます: MySQL 構文の WITH `cte` AS (VALUES ROW(1), ROW(2), ROW(n)) を jOOQ DSL に変換する方法
P粉794177659
P粉794177659 2024-01-16 14:51:40
0
1
347

MySQL の SQL クエリがあります:

リーリー

jOOQ DSL への変換後:

リーリー

結果は次のとおりです:

リーリー

しかし、説明には冗長な UNION があることが示されています:

リーリー

別の MySQL 構文 - VALUES ROW(1)、ROW(2)、ROW(n):

を使用して SQL を書き直しました。 リーリー

結果は同じです:

リーリー

ただし、クエリ プランナーは UNION を使用しません:

リーリー

質問: 最終的なスクリプトを jOOQ DSL に変換するにはどうすればよいですか?

を達成する方法が見つかりません ああああ

P粉794177659
P粉794177659

全員に返信(1)
P粉752812853

jOOQ バージョン 3.15 の時点では、 標準 SQL VALUES コンストラクター org.jooq.Select として表す方法はありません。 。 org.jooq.Table としてのみ表すことができます。https://github.com/jOOQ/jOOQ/issues/5871 を参照してください。

したがって、jOOQ DSL を使用して完全に準拠した構文を表現することはまだできませんが、FROM 句で VALUES を使用できます。 リーリー

これにより、予想されるものとほぼ同じ計画が生成されるはずです。もう 1 つの解決策は、

Pure SQL テンプレート を使用することです。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!