同时使用 SELECT 语句和 SELECT FROM WHERE 的多个 INSERT
Multiple INSERT with SELECT statement and SELECT FROM WHERE simultaneously
我有一个 table 形状如下:
CREATE TABLE Cars (
id integer PRIMARY KEY AUTO_INCREMENT NOT NULL,
brand text,
color text
);
按此SQLFiddle link即可查看数据库。
您会在右侧面板上看到我尝试使用的查询,以便使用 SELECT
语句插入值。
问题
有人可以指出正确的方向来插入带有 SELECT
语句的值,同时有和没有 WHERE
子句吗?
我尝试了以下插入来解决这个问题:
INSERT INTO Cars (brand, color)
SELECT "mazda", "black",
SELECT Cars.brand, Cars.color FROM Cars WHERE Cars.brand = "ferrari";
使用UNION ALL
:
INSERT INTO Cars (brand, color)
SELECT "mazda", "black"
UNION ALL
SELECT Cars.brand, Cars.color FROM Cars WHERE Cars.brand = "ferrari";
我有一个 table 形状如下:
CREATE TABLE Cars (
id integer PRIMARY KEY AUTO_INCREMENT NOT NULL,
brand text,
color text
);
按此SQLFiddle link即可查看数据库。
您会在右侧面板上看到我尝试使用的查询,以便使用 SELECT
语句插入值。
问题
有人可以指出正确的方向来插入带有 SELECT
语句的值,同时有和没有 WHERE
子句吗?
我尝试了以下插入来解决这个问题:
INSERT INTO Cars (brand, color)
SELECT "mazda", "black",
SELECT Cars.brand, Cars.color FROM Cars WHERE Cars.brand = "ferrari";
使用UNION ALL
:
INSERT INTO Cars (brand, color)
SELECT "mazda", "black"
UNION ALL
SELECT Cars.brand, Cars.color FROM Cars WHERE Cars.brand = "ferrari";