このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/db/1299305530/953
#  よろしくお願いします 
#   
#  MySQLでint型でstartとendというフィールドがあります。start < endとなっています。 
#  n以上m以下の範囲が、テーブルのstart以上end以下の範囲と被ってるレコードを取り出す場合、 
#  SELECT文の条件はどうなるのでしょうか? 
#   
#   

'int型でstartとendというフィールドがあります。start < endとなっています。n以上m以下の範囲が、テーブルのstart以上end以下の範囲と被ってるレコードを取り出す' :-
        テーブル(_start,_end),
        'n以上m以下の範囲が、テーブルのstart以上end以下の範囲と被ってる'(_n,_m,_start,_end).

'n以上m以下の範囲が、テーブルのstart以上end以下の範囲と被ってる'(_n,_m,_start,_end) :-
        _n =< _end,
        _m >= _start,!.
'n以上m以下の範囲が、テーブルのstart以上end以下の範囲と被ってる'(_n,_m,_start,_end) :-
        _n =< _end,
        _m >= _start,!.