0

次のエラー「SELECT top (20) L.load_Number」が表示されます。

INSERT INTO Last_20_Loads 
SELECT        top (20) L.load_Number, count(b.Bales_Per_Hour) AS COUNT_Bales_Per_Hour, sum(b.Bales_Per_Hour) AS SUM_Bales_Per_Hour
FROM Loads AS L INNER JOIN
    Bales AS B ON L.Load_Number = B.Load_Number 
where (status = 7)
GROUP BY l.load_Number
ORDER BY l.load_Number DESC;

エラーが発生するのはなぜですか。直し方?

ありがとう、

ジェリー

4

2 に答える 2

1

MySQL は TOP の代わりに LIMIT を使用します。INSERT ステートメントで列名も指定する必要があります

INSERT INTO Last_20_Loads (load_number, countbales, sumbales)
SELECT L.load_Number, count(b.Bales_Per_Hour) AS COUNT_Bales_Per_Hour, sum(b.Bales_Per_Hour) AS SUM_Bales_Per_Hour
FROM Loads AS L INNER JOIN
Bales AS B ON L.Load_Number = B.Load_Number 
where (status = 7)
GROUP BY l.load_Number
ORDER BY l.load_Number DESC
LIMIT 20;
于 2013-04-01T15:51:03.687 に答える
0

の同等物TOPLIMITmysql にあります。

INSERT INTO Last_20_Loads 
SELECT  L.load_Number, 
        count(b.Bales_Per_Hour) AS COUNT_Bales_Per_Hour, 
        sum(b.Bales_Per_Hour) AS SUM_Bales_Per_Hour
FROM    Loads AS L 
        INNER JOIN Bales AS B 
            ON L.Load_Number = B.Load_Number 
where   (status = 7)
GROUP   BY l.load_Number
ORDER   BY l.load_Number DESC
LIMIT   20;
于 2013-04-01T15:50:22.970 に答える