从表中插入一列数据到其他表中,但其他列数据将被动态指定
问题描述:
我有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米
答
尝试这种情况:
insert into b (bid, bname) select aid, 'm' as bname_fixed_val from a
个
两个事实启用了上述解决方案:
- 的
insert .. select
子句允许你插入值与任何select
返回。 -
可以作为字段返回常数值与
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
你想在'bname'上插入什么,预期的结果是什么? – Lamak 2011-03-04 16:01:08