2011-03-04 114 views
0

我有2个表。 表A柱 - 援助,aname 表B柱 - 竞价,BNAME从表中插入一列数据到其他表中,但其他列数据将被动态指定

从表A,我会拿起从列“援助”的数据, 并在“出价”表B的列插入,但在表B的bname列中,我将插入一个新值。我该怎么做呢?

create table A(aid int,aname char) 

insert into A values(111, 'e') 


create table B(bid int, bname char) 


insert into B (bid,bname) 

竞价会从查询值:选择从 BNAME援助将得到一个新的价值-m

预期的结果应该是:表B将有:

投标BNAME --- ----- 111米

+0

你想在'bname'上插入什么,预期的结果是什么? – Lamak 2011-03-04 16:01:08

回答

2

尝试这种情况:

insert into b (bid, bname) select aid, 'm' as bname_fixed_val from a 

两个事实启用了上述解决方案:

  1. insert .. select子句允许你插入值与任何select返回。
  2. 可以作为字段返回常数值与select,例如像:

    SELECT 0 as id, 'John' as name 
    

结合这两点在一起,我用了一个insert..select子句从第一个表中的字段值(aid ),以及第二个字段的常量值(m)。 AS bname_fixed_val子句只是一个字段别名,可以省略。

有关SQL的更多信息,请看这里的链接:http://www8.silversand.net/techdoc/teachsql/index.htm,虽然使用Google搜索也不会伤害到它。

+0

非常感谢,先生,它的工作,我可以有一个简单的解释也对这个查询,你建议 – sqlchild 2011-03-04 16:12:11

相关问题