単一のクエリに複数の行を挿入したい。
$firstname = array('Arfan','Awais','Ahmad'.....);
$lastname = array('Haider','k','Raza'..........);
データの挿入:
INSERT INTO `table_nmae`(firstname,lastname)
VALUES
('Arfan','Haider'),('Awais','k'),('Ahmad','Raza');
この3レコードだけあれば、とても簡単にできます。
存在するレコードの数がわからない場合は、上記を使用できません。
それから私は何をしましたか?
更新:
配列内のレコード数がわからない場合は、単純foreach loop
にこれを行うことができますが、これによりパフォーマンスが低下します。
foreach($firstname as $f){
foreach($lastname as $l){
INSERT INTO `table_name`(firstname,lastname)
VALUES('$f','$l');
}
}
今回はマルチクエリを使っていますが、パフォーマンス的にはシングルクエリの方が良いと思います。
FOR ONE COLUMN:
列が 1 つしかない場合、単一のクエリを使用するのは非常に簡単です。
INSERT INTO `table_name`(firstname) VALUES
.implode(',', $firstname);
しかし、ここに複数列がありますが、どうすればそれらを行うことができますか。
ありがとう.....