我有一张如下表格:
owner Pet
__________
Bob Joe
Sam Rob
Bob George
Phil Marge
现在,我想为新的所有者Nick创建一个INSERT语句。我想做一个插入声明,这样对于Bob拥有的每一只宠物,Nick都拥有一个相同的名字。
我正在努力完成我的任务:
INSERT INTO TABLE
VALUES ('Nick', Pet)
SELECT Pet FROM Table T
WHERE T.owner = 'Bob')
但上述情况并不奏效。谁能告诉我我做错了什么?
答案 0 :(得分:5)
你很亲密:
INSERT INTO TABLE (owner, Pet)
SELECT 'Nick', Pet FROM Table WHERE owner = 'Bob'
答案 1 :(得分:3)
我认为这样做会。
Insert Into Table (Pet, Owner)
Select Pet, 'Nick' From Table Where Owner = 'Bob'
答案 2 :(得分:0)
我们能让它变得更简单吗?
SELECT 'Nick', pet INTO table FROM table WHERE Owner = 'Bob'
答案 3 :(得分:0)
这会做你想要的:
create table t_test3 ( ownr varchar(20) not null, pet varchar(20) not null);
insert into t_test3 (ownr, pet) values ('bob', 'joe');
insert into t_test3 (ownr, pet) values ('sam', 'rob');
insert into t_test3 (ownr, pet) values ('bob', 'george');
insert into t_test3 (ownr, pet) values ('phil', 'marge');
insert into t_test3
select 'nick', pet from t_test3 where ownr = 'bob';
select * from t_test3;
答案 4 :(得分:0)
存储宠物inna var并在第二次查询中使用。
SELECT Pet INTO @PET FROM Table WHERE owner = 'Bob')
INSERT INTO TABLE VALUES ('Nick', @PET)
多数民众赞成你想要的东西?
答案 5 :(得分:0)
INSERT Pets (owner, Pet)
SELECT 'Nick', Pet
FROM Pets
WHERE owner = 'Bob'
假设您的桌子名为“宠物”。运行不带插入的Select以查看将首先插入的行。