多个mysql语句将数据放入同一个表中

多个mysql语句将数据放入同一个表中,mysql,Mysql,我有一个类似这样的sql语句 SELECT * FROM ( SELECT Op_Number, Machine_Number, Format(SUM(Elapsed),2) AS Elapsed , SUM(Count) AS Count , SUM(Scrap) AS Scrap , (SUM(`Scrap`)/SUM(`Count`)) * 100 AS ScrapPercent FROM count_down WHERE Wo_Number != 'PlaceHolder' AND

我有一个类似这样的sql语句

SELECT * FROM ( 
SELECT Op_Number, Machine_Number, Format(SUM(Elapsed),2) AS Elapsed , SUM(Count) AS Count , SUM(Scrap) AS Scrap , (SUM(`Scrap`)/SUM(`Count`)) * 100 AS ScrapPercent 
FROM count_down 
WHERE Wo_Number != 'PlaceHolder' AND Count > 0
Group BY Op_Number , Machine_Number
 LIMIT 5
) AS tmp_table ORDER BY Machine_Number, Count desc;
此查询返回的结果如下所示:

OP_number | Machine_Number | Elapsed | Count | Scrap | ScrapPerent 
 --------------------------------------------------------------------
  Value1  |     1          |   20     |  10  |  10   |   100
  Value2  |     10         |   30     |  5   |   0   |    0
但是,当每台机器有很多行时,例如,如果机器1有200条记录,机器10有200条记录,那么在这个结果集中我会有400条记录,所以我要做的是将这个语句限制为5,ad a,其中是这样,其中机器_number=1

所以最后我想要的是一个这样的查询

//Query for machine1
SELECT * FROM ( 
SELECT Op_Number, Machine_Number, Format(SUM(Elapsed),2) AS Elapsed , SUM(Count) AS Count , SUM(Scrap) AS Scrap , (SUM(`Scrap`)/SUM(`Count`)) * 100 AS ScrapPercent 
FROM count_down 
WHERE Wo_Number != 'PlaceHolder' AND Count > 0 AND Machine_number = 1
Group BY Op_Number , Machine_Number
 LIMIT 5
) AS tmp_table ORDER BY Machine_Number, Count desc;

// Query for machine 2 
  SELECT * FROM ( 
 SELECT Op_Number, Machine_Number, Format(SUM(Elapsed),2) AS Elapsed , SUM(Count) AS Count , SUM(Scrap) AS Scrap , (SUM(`Scrap`)/SUM(`Count`)) * 100 AS ScrapPercent 
FROM count_down 
WHERE Wo_Number != 'PlaceHolder' AND Count > 0 AND Machine_number = 2
Group BY Op_Number , Machine_Number
 LIMIT 5
) AS tmp_table ORDER BY Machine_Number, Count desc;
    OP_number | Machine_Number | Elapsed | Count | Scrap | ScrapPerent 
 --------------------------------------------------------------------
  Value1  |     1          |   20     |  10  |  10   |   100
  Value1  |     1          |   20     |  10  |  10   |   100
  Value1  |     1          |   20     |  10  |  10   |   100
  Value1  |     1          |   20     |  10  |  10   |   100
  Value1  |     1          |   20     |  10  |  10   |   100
  Value1  |     2          |   20     |  10  |  10   |   100
  Value1  |     2          |   20     |  10  |  10   |   100
  Value1  |     2          |   20     |  10  |  10   |   100
  Value1  |     2          |   20     |  10  |  10   |   100
  Value1  |     2          |   20     |  10  |  10   |   100
  Value1  |     3          |   20     |  10  |  10   |   100
  Value1  |     3          |   20     |  10  |  10   |   100
  Value1  |     3          |   20     |  10  |  10   |   100
  Value1  |     3          |   20     |  10  |  10   |   100
  Value1  |     3          |   20     |  10  |  10   |   100
Ext Ext fyi全套将有14台机器,然后我希望结果如下所示

//Query for machine1
SELECT * FROM ( 
SELECT Op_Number, Machine_Number, Format(SUM(Elapsed),2) AS Elapsed , SUM(Count) AS Count , SUM(Scrap) AS Scrap , (SUM(`Scrap`)/SUM(`Count`)) * 100 AS ScrapPercent 
FROM count_down 
WHERE Wo_Number != 'PlaceHolder' AND Count > 0 AND Machine_number = 1
Group BY Op_Number , Machine_Number
 LIMIT 5
) AS tmp_table ORDER BY Machine_Number, Count desc;

// Query for machine 2 
  SELECT * FROM ( 
 SELECT Op_Number, Machine_Number, Format(SUM(Elapsed),2) AS Elapsed , SUM(Count) AS Count , SUM(Scrap) AS Scrap , (SUM(`Scrap`)/SUM(`Count`)) * 100 AS ScrapPercent 
FROM count_down 
WHERE Wo_Number != 'PlaceHolder' AND Count > 0 AND Machine_number = 2
Group BY Op_Number , Machine_Number
 LIMIT 5
) AS tmp_table ORDER BY Machine_Number, Count desc;
    OP_number | Machine_Number | Elapsed | Count | Scrap | ScrapPerent 
 --------------------------------------------------------------------
  Value1  |     1          |   20     |  10  |  10   |   100
  Value1  |     1          |   20     |  10  |  10   |   100
  Value1  |     1          |   20     |  10  |  10   |   100
  Value1  |     1          |   20     |  10  |  10   |   100
  Value1  |     1          |   20     |  10  |  10   |   100
  Value1  |     2          |   20     |  10  |  10   |   100
  Value1  |     2          |   20     |  10  |  10   |   100
  Value1  |     2          |   20     |  10  |  10   |   100
  Value1  |     2          |   20     |  10  |  10   |   100
  Value1  |     2          |   20     |  10  |  10   |   100
  Value1  |     3          |   20     |  10  |  10   |   100
  Value1  |     3          |   20     |  10  |  10   |   100
  Value1  |     3          |   20     |  10  |  10   |   100
  Value1  |     3          |   20     |  10  |  10   |   100
  Value1  |     3          |   20     |  10  |  10   |   100
这是我到目前为止所拥有的一把小提琴

正如你从这把小提琴中看到的,我得到了机器10的结果,并将其限制为5个结果,以便只得到前5个结果,我想做的是这个查询,但是对于14台机器,而不是机器1

Where Machine_number = 1;
Where Machine_number = 2;  
Where Machine_number = 3;
ext ext 
然后返回如上所示的结果,但该机器的每个查询需要限制为5个结果