このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/db/1274791771/369
#  会社コード|部署コード|課コード|給料 
#   
#  というテーブルがあったとき、 
#  GROUP BY 会社コード , 部署コード 
#  で部署毎の給料合計を出したいけど、 
#  抽出結果の列には課コードも含めたい、 
#  というときってどうしたら良いのでしょうか? 
#  イメージは↓の感じです。 
#  A会社|B部署|C課|100万円 
#  A会社|B部署|D課|100万円 
#  A会社|E部署|F課|500万円 
#  A会社|E部署|G課|500万円 
#

'抽出結果に課コードを加えた、会社コード・部署コードで集約した給与合計ならび'(_給与合計ならび) :-
        findsetof([_会社コード,_部署コード,_課コード],給料(_会社コード,_部署コード,_課コード,_),L1),
        findall([_会社コード,_部署コード,_課コード,_給与合計],(
                    member([_会社コード,_部署コード,_課コード],L1),
                    findsum(_給与,給与(_会社コード,_部署コード,_,_給与),_給与合計)),_給与合計ならび).