このディレクトリの索引
http://toro.2ch.net/test/read.cgi/db/1316769778/351
#  解決気味です。 
#   
#  上記を諦め、 
#   
#  T1 マスタテーブル 
#  ID | DATE     | DATA |ckbox 
#  --+----------+----- |------ 
#  1 | 2007-11-11 | aaa  | 201,202,205,401,403,404 
#  2 | 2007-11-11 | bbb  | 202,203 
#  3 | 2007-11-10 | ccc  | 203,204,403,404,405 
#   
#  上記の形式にして 
#  select ID,DATE,DATA from `T1`  
#  where 
#   CONCAT(',',chkbox,',') like '%,201,%'  
#   and  
#   CONCAT(',',chkbox,',') like '%,202,%'  
#   and  
#   CONCAT(',',chkbox,',') like '%,403,%' 
#   
#  こういった形で取得。 
#   
#  チェックボックスは計300個程ありそれぞれユニークを振っています。 
#  チェックされている数は平均50個程。 
#  レコード数は約1万程なのですがこの方法で大丈夫かどうか心配です。 
#   

'チェックボックスならびを指定してT1の組を検索'(_チェックボックスならび,_ID,_DATE,_DATA,_ckbox) :-
        'T1'(_ID,_DATE,_DATA,_ckbox),
        split(_ckbox,[','],L),
        'チェックボックスならびの要素はすべてLの中にある'(_チェックボックスならび,L).

'チェックボックスならびの要素はすべてLの中にある'([],_).
'チェックボックスならびの要素はすべてLの中にある'([_要素|R],L) :-
        member(_要素,L),
        'チェックボックスならびの要素はすべてLの中にある'(R,L).