首页 > 代码库 > 分组后在分组内排序、每个分组中取前N条
分组后在分组内排序、每个分组中取前N条
SELECT p_type,p_name,p_view,row_num from (
SELECT p_type,p_name,p_view,IF(@bak=p_type,@rownum:=@rownum+1,@rownum:=1) as row_num, @bak:=p_type
FROM
( SELECT p_type,p_name,p_view from products
order by p_type,p_view desc ) a , ( SELECT @rownum:=0,@bak:=‘‘) b
) c WHERE c.row_num <=2
IF函数
IF(条件,表达式1,表达式2)
如果条件成立 则返回表达式1,否则是2
分组后在分组内排序、每个分组中取前N条
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。