SQL从一个库中的表复制一部分数据到另外一个库的表中

来源:百度知道 编辑:UC知道 时间:2024/06/15 18:46:16
在SQL中,有两个数据库kmjxc_yy和bak,两个库中表结构完全一样,现在,我想把bak中的表pos_daysum的20090101至20090125的数据全部复制到kmjxc_yy中表pos_daysum的20090101至20090125这段数据里,有人知道用什么语句实现吗?已经试过导入数据,行不通,我就想知道有没什么语句来实现,可以的话追加50分,在线等~~~~~
对了,kmjxc_yy的表pos_daysum的20090101至20090125这段有数据,我要bak中的来覆盖掉哦
你们的答案都差不多,但是运行的结果会有个错误提示:子查询返回的值多于一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情况是不允许的。
语句已终止。

INSERT INTO kmjxc_yy.pos_daysum
SELECT *
from bak.pos_daysum
where date between '20090101' and '20090125'
这个没问题,关于你说的那个覆盖问题你完全可以在复制数据之前先把kmjxc_yy表中的数据删掉么
delete from kmjxc_yy where date between '20090101' and '20090125'
先删除,后增加绝对没问题
哇哈……

replace into table kmjxc_yy.dbo.pos_daysum
AS
SELECT *
from bak.dbo.pos_daysum
where date between '20090101' and '20090125'

use kmjxc
go
insert pos_daysum select * from bak..pos_daysum where [字段名]>=20090101 and [字段名]<=20090125

关键是kmjxc中有没有这些数据,如果没有可以这样加,如果有的话那就需要建一个表后再update

INSERT INTO dbname.dbo.表a(字段)
SELECT (字段)
from dbname.dbo.表b
where 20090101至20090125

INSERT INTO kmjxc_yy.pos_daysum
SELECT *
from bak.pos_daysum
where date between '20090101' and '20090125'
这样可以满足你的要求,BETWEEN是之在某个范围之内的,你可以去试试看,我是做数据库的,有不明白的地方可以来问我

insert