group by 不会用

写个group by字句费劲了。

记住一点有过有单行函数,你需要去什么数据就必须 group by 什么字段。

先看看错误的写法:

原sql:

select e.name,z.* ,l.lbtitle from t_g_e e, t_mez z,t_ez l 
where e.id = z.examid and l.lbcode = z.examlbcode and e.id = ? ORDER BY z.id 
执行结果如下:


后来 因为要加个统计数量: 统计就要用到count()  ,单行函数就要分组。死活弄不出来。正确的做法是,如果你需要count并其它字段,group by 的时候,把需要的都group by上


select  e.name,z.examlbcode ,z.id,l.lbtitle,e.id,count(z.examlbcode)
from t_g_e e, tp_mez z,tp_ez l,e__kc k
where e.id = z.examid and l.lbcode = z.examlbcode and z.examlbcode = k.zklb and e.id = '511' 
group by z.examlbcode,l.lbtitle,z.id,e.name,e.id



我写给自己看的,你们看不懂正常。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值