このディレクトリの索引

# 出典 :: SQL質疑応答スレ 9問目 #613 # <ユーザ情報テーブル> # ID,氏名,住所 # 1,ユーザ1,青森県〜〜〜 # 2,ユーザ2,青森県〜〜〜 # 3,ユーザ3,北海道〜〜〜 # 4,ユーザ4,宮城県〜〜〜 # 5,ユーザ5,岩手県〜〜〜 # ・・・ # <都道府県テーブル> # ID,都道府県 # 1,北海道 # 2,青森県 # 3,岩手県 # 4,宮城県 # 5,秋田県 # ・・・ # この2つのテーブルから、クエリを使用して、都道府県別のユーザ数を取得(カウント)したいのですが、教えていただけませんでしょうか? 上記の5レコードで説明しますと、以下のような結果が望みです。 # 都道府県,人数 # 北海道,1 # 青森県,2 # 岩手県,1 # 宮城県,1 # 秋田県,0 都道府県別のユーザ数一覧 :- 都道府県別のユーザ数一覧見出し, forall(都道府県別のユーザ数を取得(_都道府県,_人数), 都道府県別のユーザ数の表示(_都道府県,_人数)). 都道府県別のユーザ数の表示(_都道府県,_人数) :- writef('%w,%w\n',[_都道府県,_人数]). 都道府県別のユーザ数一覧 :- write('都道府県,人数\n'). 都道府県別のユーザ数を取得(_都道府県,_人数) :- 都道府県(_,_都道府県), 度数((ユーザ情報(_,_,住所),sub_atom(_住所,0,_,_,_都道府県)),_人数). 度数(_目標,_度数) :- findall(1,_目標,L), length(L,_度数).