weixin_42317582 2009-07-29 22:29
浏览 222
已采纳

这个可以只用一句sql实现吗?

有名为'mytable'的表,主键id,billNo事实上也不重复,customerId会重复,比如有4条记录如下:
id  billNo  customerId  state1  state2  state3
1   0001    abbc        0   0   1
2   0002    csdf        0   0   0
3   0003    abbc        0   0   0
4   0004    ssss        0   0   0

希望查询客户名下所有bill的三个状态(state1、state2、state3)皆为0的客户。
查询结果共2个记录如下:
    customerId
    csdf
    ssss
客户abbc因为0001的bill下有个state3为1所以不符合。
请教各位,不使用自定义函数,可以用一个sql(可以包含子查询,但尽量考虑效率)实现吗?
  • 写回答

3条回答 默认 最新

  • ljs2342003 2009-07-30 10:38
    关注

    [code="sql"]select distinct customerId from mytable
    where customerId not in
    (select distinct customerId from mytable
    where (state1|state2|state3)=1)
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式