比较两张表,恢复出来得表中没有的当然就是今天的纪录了,然后再将这些纪录set日期为今天的不就行了?
解决方案 »
- TEMPDB
- 急问索引效率问题~~
- 求SQL语句,删指定字符之前的所有内容
- 如何统计最近几天,或最近几个小时的销售量!
- [DBNETLIB][ConnectionWrite (send()).]一般性网络错误。请检查网络文档
- 如何将excel表中的数据转换成sql数据库的形式,请指教.
- (.)(.)~ 如何在VC里用数据库类向数据库表中添加新字段?我用"ALTER TABLE ..."语句会出错:(
- 通过外部程序来实现SQL Server 数据库恢复的方法有那些?
- db2的分页sql该如何写?
- 关于SQL SERVER登录认证的问题
- 有一高程题请高手详细解释?
- 关于日期型的,如何insert数据?谢谢!!!
UPDATE B SET 日期=今天 FROM A,B WHERE B.B1 NOT IN (SELECT A1 FROM A)
UPDATE B SET 日期=A.日期 FROM A,B WHERE ....
FROM A,B WHERE a.id=b.id不过如果是我,我会倒过来做:insert a
select * from b
where not exists (select * from a
WHERE id=b.id
)再 exec rename 来修改表名。
from B where b.id in (select A.id from A)
注:id列表示主键再加上春城的语句
没有主键!
临时增加一个行不行?
如不行语句咋写?急!!!
只要是实际上唯一的字段就可以字段组合也可以,但语句要变成:UPDATE B SET 日期=A.日期
FROM A,B
WHERE a.X=b.X
AND A.Y=B.Y
AND A.Z=B.Z
OR:insert a
select * from b
where not exists (select * from a
WHERE X=b.X
AND Y=B.Y
AND Z=B.Z
)
我只好加了一个ID字段(自动增量)用上面的方法可以成功,但加这个ID,两个表可能不会一一对应?我想问,我从备份中恢复出来的表和正在用的表,其记录的物理顺序是不是一样呢?
你可以包括除日期外的所有字段:UPDATE B SET 日期=A.日期
FROM A,B
WHERE a.X=b.X
AND A.Y=B.Y
AND A.Z=B.Z
...
AND A.LASTCOL=B.LASTCOL