このディレクトリの索引
http://pc11.2ch.net/test/read.cgi/db/1252492296/602
#  MYSQLを使っています。 
#  SELECT * FROM aaa WHERE id = ● 
#  この●の部分が複数ある場合、例えば 3,9,14,43,413,545のような場合に 
#  一度に結果を取り出したいのですが、どういう風にかけばいいでしょうか? 
#  他のテーブルにid_list = "3 9 14 43 413 545" 
#  のように入っていているのですが 
#  これをsplitしてid=3 id=9のようにして 
#  SELECT * FROM aaa WHERE id = ●を繰り返すコードにしてるですが 
#  数増えたらとんでもないことになるじゃん・・・って気づきました。 
# 

'SELECT * FROM aaa WHERE id = ●'(IdList,ID,Data) :-
        split(IdList,[' '],L),
        aaa(ID,Data),
        member(ID,L).