a=1
b=2
c=3
d=4
e=5
f=6
...
共m个条件满足指定的n个条件select * from table_1 where (a=1,b=2,c=3) or (a=1,b=2,d=4) or (b=2,c=3,d=4) or...表中大约有7万数据

解决方案 »

  1.   

    复杂了. 简单一些的还可用动态Sql解决.
      

  2.   

    如果返回的记录很少,<1-5%,可以考虑在abcdef...上各建一个索引,把语句改成
    select * from table_1 where (a=1,b=2,c=3)
    union select * from table_1 where (b=2,c=3,d=4)
    union ....如果返回记录很多,全表扫描说不定是最快的方式,再说7万条记录也不多,:)