SQL把一个表的数据插入另个表中

来源:百度知道 编辑:UC知道 时间:2024/05/18 02:57:17
各位 我有个 问题啊
SQL中有T1表,T2表,T1的字段有 A B C D 字段 而T2有 A B C D E F 字段,也就是两个表中有四个字段时相同的,我现在想把T1 的四个字段里的值 都插入到T2中去,
INSERT INTO T2
(a, b, c, d, e, f)
SELECT a, b, c, d, '', ''FROM T1
我知道这样可以做到
但是 我这个表里有100多个字段阿
谁知道不用都把他们的字段名都写出来的办法啊.
谢谢 在线等,先谢了啊
hot7181761 你那 AS 附近有语法错误,你在的话 好好说下,谢谢

之前的写错了,不好意思啊,希望没误导你,象你说的那样插入应该就只有一种写法,就是你自己写的那样。不然你可以试一试这样写,估计是不行的
INSERT INTO T2
SELECT * FROM T1;呵呵,这个大概是错的,至于是否有别的很简单的方法,我目前还没发现。
我之前说的AS 是建表用的,就是建立一个与T1表相同的表T2,就是
create table t2 as select * from t1;
如果t2不想要数据,只要结构相同,就在后面加一个假的条件,就是这样
create table t2 as select * from t1
where 1=2;

insert into t2 select *,"T1比T2多出来的字段" from T1
或者先把T1的数据结构该成和T2一样

我们的数据库可能不一样,sql也就有可能不一样,不过我后面说的方法任何数据库都能用

select * from t1

用 view(视图)
例如
使用CREATE VIEW或ALTER VIEW创建或更改视图。
使用DROP VIEW销毁视图。

ALTER [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]    VIEW view_name [(column_list)]  
  AS
select_statement    [WITH [CASCADED | LOCAL] CHECK OPTION]