我想在MySQL中将数据从一个表复制到另一个表。
表1(现有表):
aid
st_id
from_uid
to_gid
to_uid
created
changed
subject
message
link
表2(新表)
st_id
uid
changed
status
assign_status
我想把TABLE 1中的一些数据字段复制到TABLE 2中。
是否可以使用MySQL查询完成这个操作?
我想在MySQL中将数据从一个表复制到另一个表。
表1(现有表):
aid
st_id
from_uid
to_gid
to_uid
created
changed
subject
message
link
表2(新表)
st_id
uid
changed
status
assign_status
我想把TABLE 1中的一些数据字段复制到TABLE 2中。
是否可以使用MySQL查询完成这个操作?
这将实现你想要的功能:
INSERT INTO table2 (st_id,uid,changed,status,assign_status)
SELECT st_id,from_uid,now(),'Pending','Assigned'
FROM table1
如果您想从table1中包含所有行,则无需添加任何条件语句。否则,如果您只想添加table1的子集,则可以在最后添加一个“WHERE”语句。[AS]
在方括号中,AS
在这里做什么? 答:方括号中的[AS]
表示缩写或简称。在这个上下文中,AS
是某个实体、组织或公司的缩写或简称,但具体指代什么需要根据上下文判断。 - Kasun Siyambalapitiya你可以轻松地从另一个表中获取数据。您只需添加所需的字段即可。
MySQL查询如下:
INSERT INTO table_name1(fields you want)
SELECT fields you want FROM table_name2
其中,这些值是从table2复制到table1的
CREATE TABLE newTable LIKE oldTable;
然后,将数据复制过去
INSERT INTO newTable SELECT * FROM oldTable;
INSERT INTO Table1(Column1,Column2..) SELECT Column1,Column2.. FROM Table2 [WHERE <condition>]
SELECT *
INTO newtable [IN externaldb]
FROM table1;
首先需要创建table2。
插入数据到table2中(field1, field2,...), 从table1中选择相应的字段(field1, field2,...) 满足特定条件(where condition);
insert into #temp
select Product_ID,Max(Grand_Total) AS 'Sales_Amt', Max(Rec_Amount) ,'',''
from Table_Name group by Id
上述查询仅在我们创建了与客户匹配的列的客户表时才起作用
INSERT INTO clients(c_id,name,address)SELECT c_id,name,address FROM customer