SELECT SUM(CONS_PAYMONEY) as tmoney,COUNT(DISTINCT CONS_MEMID) as tuser,count(1) as tnum FROM `ks_user_cost` WHERE () LIMIT 1
我要查询CONS_MEMID字段相同值出现的次数,取次数大于3的。
不用group by
在where里面如何写查询条件,请大虾指教

解决方案 »

  1.   

    不能
    SELECT SUM(CONS_PAYMONEY) as tmoney,COUNT(DISTINCT CONS_MEMID) as tuser,count(1) as tnum FROM `ks_user_cost` group by id having COUNT(DISTINCT CONS_MEMID)>=3
    or
    select * from (
    SELECT SUM(CONS_PAYMONEY) as tmoney,COUNT(DISTINCT CONS_MEMID) as tuser,count(1) as tnum FROM `ks_user_cost` ) a WHERE tuser>=3 LIMIT 1
      

  2.   

    COUNT(DISTINCT CONS_MEMID)>=3?
    不是这个意思
    CONS_MEMID记录的是一个用户id。
    即选择在这个表里面有3条记录以上的用户。
      

  3.   

    贴建表及插入记录的SQL,及要求结果出来看看
      

  4.   

    不纠结这个问题了,还是分多条sql解决,散分,谢谢你的热心回答