このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/db/1316769778/293
#  oracleです。 
#   
#  ・テーブルデータ 
#  テーブルA 
#   ID |状態 
#   100|○ 
#   100|○ 
#   101|○ 
#   102|○ 
#   104|○ 
#   105|× 
#  テーブルB 
#   ID |状態 
#   100|○ 
#   100|○ 
#   100|○ 
#   103|○ 
#   105|○ 
#   106|× 
#   
#  ・欲しい結果 
#   
#   ID  |AのCOUNT(ID)|BのCOUNT(ID) 
#   100|2                     |3 
#   101|1                     |null 
#   102|1                     |null 
#   104|1                     |null 
#   105|null                 |1 
#   
#  ・説明: 
#  A,B各テーブルの状態が○であるものをID単位でカウントし、 
#   AとBのテーブルを結合したいのですが、SQL1本で可能でしょうか? 
#   結合する際、どちらかのテーブルのカウントが1以上であれば出力したいです。 
# 
# 

'A,B各テーブルの状態が○であるものをID単位でカウントし、AとBのテーブルを結合したいのですが、SQL1本で可能でしょうか? 結合する際、どちらかのテーブルのカウントが1以上であれば出力したいです。'(_ID,CountA,CountB) :-
        findsetof(_ID,(
                    テーブルA(_ID,○ );
                    テーブルB(_ID,○ )),
                L),
        append(_,[_ID|_],L),
        count(テーブルA(_ID,○ ),CountA),
        count(テーブルB(_ID,○ ),CountB).