MySQL分组问题

SELECT * , DATE_FORMAT( FROM_UNIXTIME( pay_time ) , '%Y-%m-%d' ) 'dates', 2, CASE WHEN xq_type >0THEN 1 WHEN xq_top >0THEN 2 WHEN xq_activityid >0THEN 3 WHEN xq_fee >0THEN 4 ELSE 0 END 'type'FROM pre_vyuan_orderWHERE pay_time >0AND xq_userid >0AND part1 =100000AND DATE_FORMAT( FROM_UNIXTIME( pay_time ) , '%Y-%m-%d' ) = '2017-11-20'这条SQL语句查询出来的结果为什么不能给type分组。加了GROUP BY type 只显示一条,type 为 1,type 为 2 的怎么没有了 ?是什么问题呢 ?

用分组函数来做,假如你的表名是table_name select A.* from table_name A,(select product,max(date) max_date from table_name group by product) B where A.product=B.product and A.date=B.max_date;
温馨提示:答案为网友推荐,仅供参考
相似回答