Microsoft Access 掲示板

ACCESSのサブクエリについて / 7

12 コメント
views
4 フォロー
7

これは、サブクエリでは、できないのでしょうか?

出来ます。

ですが、、、提示いただいた表が
履歴を管理しているテーブルのデータだとしたら
{ 地域 + ID } で行がユニーク( 固有の値 )にならない
という可能性すらありますから

次回からは、情報を小出しにせず
主キーや インデックス、データ型 についての情報も含め、
要件を丁寧に説明なさることをおすすめします。

■ { 地域 + ID } で行がユニークになる場合

SELECT * FROM テーブル1
WHERE 地域 IN
(
    SELECT 地域 FROM テーブル1
    WHERE ( ID = 1 And 収入 >= 100 )
       OR ( ID = 2 And 収入 >= 60 )
    GROUP BY 地域
    HAVING Count(1) = 2
);

■ { 地域 + ID } で行がユニークにならない場合

SELECT t.* FROM テーブル1 t
INNER JOIN
(
    SELECT 地域
    FROM 
    ( 
        SELECT DISTINCT 地域, ID
        FROM テーブル1
        WHERE ( ID = 1 And 収入 >= 100 )
           OR ( ID = 2 And 収入 >= 60 )
    ) tmp
    GROUP BY 地域
    HAVING Count(1) = 2
) q
ON t.地域 = q.地域 ;
通報 ...