葬空吟 2024-01-11 09:43 采纳率: 61.3%
浏览 11
已结题

MySQL中根据某个字段取固定条目数的数据

MySQL数据库中有一张表,字段为 ‘部位’ ,‘参数’, ‘数量’, ‘时间’,一个部位对应多个参数,

部位参数数量时间
AA1格12023-12-12
AA2格42023-12-12
AA1格32023-12-12
BB1格52023-12-12
BB2格22023-12-12
BB1格52023-12-12

现在想写一条SQL语句查询 :

select * from table where 部位 = 'A'

之后,在此基础上每个参数取60条数据,应该如何调整?

  • 写回答

2条回答 默认 最新

  • _Onelone丶 2024-01-11 09:47
    关注
    select * from (
     SELECT *,
            ROW_NUMBER() OVER (PARTITION BY 部位 ) AS row_num
            FROM table ) as subquery where row_num<=60
            
    

    每个部位对应多个参数,不是应该是每个部位取60个参数吗?
    或者你要的是

    SELECT *
    FROM (
        SELECT *
        FROM table
        WHERE 部位 = 'A'
    ) AS subquery
    GROUP BY 部位, 参数
    LIMIT 60;
    
    
    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月23日
  • 创建了问题 1月11日