Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共15 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:如何取最后日期?

1楼
lin98 发表于:2023/10/16 11:19:00
表A:  料号、日期
        F1     2023-5-3
       F1      2023-6-30
       F2      2023-03-20
       F2      2023-9-30

效果如下
表B:料号、最后日期
      F1      2023-6-30
     F2      2023-9-30

问题一:表B如何实现取表A指定料号的最后日期?
问题二:如果表A的数量大,上百万条记录,用这种方法会不会影响效率?
2楼
有点蓝 发表于:2023/10/16 11:25:00
使用sql。比如
insert into 表B(料号,最后日期) selec料号,max(日期) from 表A group by 料号
3楼
淡月斜阳 发表于:2023/10/16 11:32:00
表A与表B间,建立关联,父表:表B,子表:表A。关联字段:料号。
表B最后日期,用表达式列,引用子表数据,MAX(MAX(Child(关联).日期))

这要求对应的表A子数据,都要加载过来,百万条记录,肯定会严重影响效率。

可采用,表B如果是仅统计,不填写,直接用sql语句生成就好了

如果需要填写,可以在表A添加新记录后,同步UPDATE更新表B的最后日期,如果这个最后日期经常会用到,这显然更有利于效率

4楼
lin98 发表于:2023/10/17 13:45:00

UPDATE {表BB}, {表AA} Set {表BB}.最后日期 = {表AA}.日期(max(日期)) Where {表BB}.[料号] = {表AA}.[料号]



[此贴子已经被作者于2023/10/17 16:55:52编辑过]
5楼
有点蓝 发表于:2023/10/17 13:53:00
UPDATE {表BB} as b Set b.最后日期 = a.日期 from (select 料号,max(日期) as 日期 from {表AA} group by 料号) as a Where a.[料号] = b.[料号]
6楼
lin98 发表于:2023/10/17 14:50:00
语法错误 (操作符丢失) 在查询表达式 'a.日期 From (Select 料号, max(日期) As 日期 From [表AA] Group By 料号) As a' 中。
7楼
有点蓝 发表于:2023/10/17 15:00:00
什么数据库?
8楼
lin98 发表于:2023/10/17 15:06:00
ACCESS
9楼
有点蓝 发表于:2023/10/17 15:11:00
UPDATE {表BB} as b , (select 料号,max(日期) as 日期 from {表AA} group by 料号) as a Set b.最后日期 = a.日期 Where a.[料号] = b.[料号]
10楼
lin98 发表于:2023/10/17 15:51:00
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2022.8.18.1
错误所在事件:
详细错误信息:
操作必须使用一个可更新的查询。
共15 条记录, 每页显示 10 条, 页签: [1] [2]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .04492 s, 2 queries.