次のクエリを使用して一度に複数のレコードを挿入できることを知っています。
INSERT INTO `TABLE1` (`First`,`Last`) VALUES ('name1','surname1'),
('name2','surname2'),
('name3','surname3'),
('name4','surname4');
しかし、上記のような1000レコードを追加するには、(name*,surname*)
すべてのレコードを書き込む必要がありますか?それともワイルドカードなどを使用できますか?それともmysql(phpmyadmin)を使用する他のソリューションがありますか?
ベストアンサー1
いいえ。次の種類の挿入のみを実行できます。
INSERT INTO table (artist, album, track, length)
VALUES
("$artist", "$album", "$track1", "$length1"),
("$artist", "$album", "$track2", "$length2"),
("$artist", "$album", "$track3", "$length3"),
("$artist", "$album", "$track4", "$length4"),
("$artist", "$album", "$track5", "$length5");
ただし、必要な正規表現を使用して上記の内容を生成するスクリプトをいつでも作成できます。その後、スクリプトは正規表現を上記の適切な項目に拡張してINSERT ...
実行する責任があります。
正規表現演算子
事前にスキーマを生成したり、VALUES
使用したコマンドコンテンツの一部として生成したりできますREGEXP
。
次のセクションで複数回使用できますWHERE
。
SELECT col1, col2, ..., coln
FROM products
WHERE sku REGEXP '^[A-Za-z]{2,4}-[0-9]{3}-[0-9]{2}$'
MySQL Webサイトでこの演算子の詳細を読むことができます。正規表現文書しかし、このように使われることを見たことがなく、自分で使ってみるつもりはありませんでした。このSO Q&Aで言及されたコマンドを見つけました。MySQLで使用する正規表現の調整。