Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 » SQL Anywhere サーバ SQL の使用法 » クエリとデータ修正 » サブクエリの使用

 

単一ローのサブクエリと複数ローのサブクエリ

外部の文に 1 つまたは 0 個のローを返すサブクエリを、「単一ローのサブクエリ」と呼びます。比較演算子の有無にかかわらず、単一ローのサブクエリは SQL 文のどこでも使用できます。

たとえば、単一ローのサブクエリは、SELECT 句の式で使用できます。

SELECT (select FIRST T.x FROM T) + 1 as ITEM_1, 2 as ITEM_2,...

また、単一ローのサブクエリは、比較演算子とともに SELECT 句の式で使用できます。

例:

SELECT IF (select FIRST T.x FROM T) >= 10 THEN 1 ELSE 0 ENDIF as ITEM_1, 2 as ITEM_2,...

外部の文に複数のロー (ただしカラムは 1 つだけ) を返すサブクエリを、「複数ローのサブクエリ」と呼びます。複数ローのサブクエリは、IN 句、ANY 句、ALL 句または EXISTS 句で使用されるサブクエリです。

 例 1:単一ローのサブクエリ
 例 2:単一ローのサブクエリ
 例 3:IN を使用した単純な複数ローのサブクエリ
 例 4:IN、ANY、ALL の使用を比較する複数ローのサブクエリ