Wenn ich eine Tabelle habe und einen Wert von einer anderen benötige und die anderen Werte von woanders kommen, muss ich dann jedes Mal die Auswahl ausführen?
INSERT INTO table1 (name, otherValue) VALUES (SELECT name FROM table2 WHERE id = 1, outsideValue1), (SELECT name FROM table2 WHERE id = 1, outsideValue2), (SELECT name FROM table2 WHERE id = 1, outsideValue3);
Der Name ist also derselbe und otherValue ist jedes Mal anders, wenn ich versuche, ihn stapelweise einzufügen.
一种方法是将“其他值”放入派生表中,以便与单个源记录交叉连接:
在MySQL 8.0.19及以上版本中,我们可以使用VALUES/ROW语法: