select *
from 一个客户公司表 a left join 一个客户联系人表 b on a.client_id=b.client_id
where b.contact_flag is null or b.contact_flag=1

解决方案 »

  1.   


    这样 的结果只会有 contact_flag=1 的值
      

  2.   

    (1)不建议使用null 表示没有,好象对索引有影响??(2) 可以借助查询分析器,检查一下执行效率(3)不知数据量级在什么, 这种业务看起来,好象不是有太多的数据的。注意只取相关的字段的,避免IO过大。另外约束一个查询主表的client_id范围,如采取分页之类的办法 。避免大量的数据读取。