15.18. 行値コンストラクタ構文


基盤のデータベースが ANSI SQL row value constructor 構文 (tuple 構文とよばれることもあります) をサポートしていないとしても、HQL はその使用をサポートしています。ここでは、一般的にコンポーネントと連繋するマルチバリュー比較を指します。名前コンポーネントを定義する Person エンティティを考えましょう:
from Person p where p.name.first='John' and p.name.last='Jingleheimer-Schmidt'
Copy to Clipboard Toggle word wrap
それは少々詳細になりますが、有効な構文です。row value constructor 構文を使用することで、この構文を簡潔化できます:
from Person p where p.name=('John', 'Jingleheimer-Schmidt')
Copy to Clipboard Toggle word wrap
それを select 節で指定するのも効果的です。
select p.name from Person p
Copy to Clipboard Toggle word wrap
複数の値と比較する必要のあるサブクエリを利用する場合、row value constructor 構文の使用も利点がある場合があります。
from Cat as cat
where not ( cat.name, cat.color ) in (
    select cat.name, cat.color from DomesticCat cat
)
Copy to Clipboard Toggle word wrap
この構文を使用するかを決定するときに考慮しなければならないことは、クエリがメタデータ内のコンポーネントのサブプロパティの順番に依存していることです。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat