2010-10-01 88 views

回答

2
insert into sycle(name,password) 
select name, password from name_table 

,或者如果密码是一个变量:

insert into sycle(name,password) 
select name, @password from name_table 

如果密码是 '名',那么:

insert into sycle(name,password) 
select name, 'name' from name_table 
+0

不,我想硬编码值'名称'作为密码....它不是来自表.... – 2010-10-01 13:35:58

+0

@sanjay pandey,看到我的更新。 – adam0101 2010-10-01 13:37:52

1

尝试:

INSERT INTO sycle(name,password) VALUES (SELECT name, 'name' FROM name_table); 

虽然这将只需要来自name_table的单个名称。如果你想获得一大堆值做:

INSERT INTO sycle(name,password) SELECT name, 'name' FROM name_table; 
+0

它没有正常工作 – 2010-10-01 13:34:56

+0

你的rdbms是什么?你使用的是mysql还是sql server? – 2010-10-01 13:36:11

+0

第二个查询工作正常...........非常感谢这个帮助 – 2010-10-04 09:56:21

1

这是你在找什么:

INSERT INTO sycle 
(
    name 
    ,password 
) 
SELECT name 
     ,NULL -- password 
FROM name_table 
+0

它使用后不工作 - 所有剩余的查询被评论 – 2010-10-01 13:41:27

+0

是的,双破折号是一个评论。确保密码后有一个新行或者完全删除' - password'。 – Brad 2010-10-01 13:45:34

0

试试这个

插入到sycle选择的名字,” name'from name_table

+1

如果您的撬刀中有多于两列,或者列未按照所需顺序,则这不起作用。 – 2010-10-01 13:35:07

+0

非常真实,但我们实际上并没有访问这些结构,我只是将他指向正确的方向 - 但应该让代码更具防御性。你是对的。 – bigtang 2010-10-01 14:08:26