出高分写个SQL语句,数据更新!

upldel 2009-11-23 11:08:15

有两个表,分别为OD,OB,OB是ODBC连接表,OB数据量比较大,有90多万条数据,用起来比较慢,想把OB表根据字段“E”数据按当天日期更新到OD表里(不能修改OB表内的数据),非常感谢!
OB表字段有:
A(有重复,文本型),b(文本型),c(文本型),d(数字),E(日期)
OD表字段有:
A(无重复,文本型),b(文本型),c(文本型),d(数字),E(日期),F(文本,取A字段的第三位)
...全文
98 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
wwwwb 2009-11-24
  • 打赏
  • 举报
回复
OB是ODBC连接表:什么数据库
是插入还是UPDATE
ACMAIN_CHM 2009-11-24
  • 打赏
  • 举报
回复
创建基于E的索引。

另外需要注意。数据库理论中表中的记录是没有顺序的。仅靠插入记录的先后顺序来排序是不稳定的。
ACMAIN_CHM 2009-11-24
  • 打赏
  • 举报
回复
insert into od(a,b,c,d,e,f)
select a,b,c,d,e,left(a,3) from ob order by e
upldel 2009-11-24
  • 打赏
  • 举报
回复
多谢ACMAIN_CHM,已达到想要的效果!
ACMAIN_CHM 2009-11-24
  • 打赏
  • 举报
回复
insert into od(a,b,c,d,e,f)
select distinct a,b,c,d,e,mid(a,3,1) from ob where e=date() order by e
upldel 2009-11-24
  • 打赏
  • 举报
回复
OB表数据:
a b c d e
sa1231 中力 dpi 50 2009/10/11
sa1231 中力 dpi 50 2009/10/11
sa1231 中力 dpi 50 2009/10/11
sa1234 几力 del 100 2009/11/24
sa1234 几力 del 100 2009/11/24
sa1234 几力 del 100 2009/11/24
sa1234 几力 del 100 2009/11/24
sa1234 几力 del 100 2009/11/24

运行#7楼的SQL语句得到OD表数据:
a b c d e f
sa1234 几力 del 100 2009/11/24 sa1
sa1234 几力 del 100 2009/11/24 sa1
sa1234 几力 del 100 2009/11/24 sa1
sa1234 几力 del 100 2009/11/24 sa1
sa1234 几力 del 100 2009/11/24 sa1
得出的结果还有两个问题
1.OD表得到的字段f数据应该为1(只取A字段的第三位,不是从第一位到第三位),
2.OD表得出的数据有重复,字段A相同的记录,只能有一条

还请各位在帮忙看下!
ACMAIN_CHM 2009-11-24
  • 打赏
  • 举报
回复
insert into od(a,b,c,d,e,f)
select a,b,c,d,e,left(a,3) from ob where e=date() order by e


如果你的e 的格式是 2009-11-24 ,即没有时间部分


建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。

否则很容易产生理解上的误差,浪费双方时间。
upldel 2009-11-24
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 acmain_chm 的回复:]
SQL codeinsertinto od(a,b,c,d,e,f)select a,b,c,d,e,left(a,3)from oborderby e
[/Quote]

这个插入之后,把OB表的数据全部插入到OD表内了,我的意思只插入今天的数据(例如:OB表内E字段有等于今天的日期,如今天是11/24号,就把今天的数据插入到OB表内),刚学习ACCESS,还是菜鸟!
upldel 2009-11-24
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wwwwb 的回复:]
OB是ODBC连接表:什么数据库
是插入还是UPDATE
[/Quote]
我表达的有点问题,是插入,我想写在VBA代码下该怎么写?
shan1119 2009-11-24
  • 打赏
  • 举报
回复
insert into od(a,b,c,d,e,f)
select a,b,c,d,date(),left(a,3) from ob order by e

7,732

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧