6

MySQL INSERT クエリで LIMIT 2 を使用できますか? 例えば

INSERT INTO MyTable
   (user_name,password)
VALUES
   (john,366543),
   (sam,654654)
LIMIT 2

私は試してみました

`#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 2' at line 1`
4

6 に答える 6

8

これは、 INSERT ... SELECT構文を使用して行うことができます:

INSERT INTO MyTable (user_name, password)
SELECT 'john', '366543'
UNION ALL SELECT 'sam', '654654'
LIMIT 2;

なぜあなたがしたいかわからない。制限を設定することで簡単に制御したい静的な値のリストが非常に長い場合はどうでしょうか。

現在削除されているコメントでpstが指摘しているように、LIMITは実際にはの一部であり、それ自体SELECTとは何の関係もありませんINSERT

于 2012-08-01T21:58:03.543 に答える
1

limit を使用して巨大なバルク データを部分的に挿入しようとしている場合は、MySQL によって設定された初期制約内で操作しています。

むしろ制約の値を増やしてみてください: PFB

変数: max_allowed_pa​​cketbulk_insert_buffer_sizekey_buffer_size

表示および設定するサンプル クエリ:

show variables like 'max_allowed_packet';
SET GLOBAL max_allowed_packet=524288000;

参考文献:
http://forums.mysql.com/read.php?20,161869

MySQL - 1 回の INSERT ステートメントで何行挿入できますか?

于 2017-05-09T08:01:32.760 に答える
0

LIMIT 2 は値を選択しない場合にのみ機能します

于 2012-08-01T21:55:38.997 に答える
-3

いいえ、挿入クエリで制限を使用することはできません

于 2016-04-29T14:15:04.170 に答える