Foxtable(狐表)用户栏目专家坐堂 → 请教一个sql 语句


  共有6491人关注过本帖树形打印复制链接

主题:请教一个sql 语句

帅哥哟,离线,有人找我吗?
ljh29206
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1368 积分:12195 威望:0 精华:0 注册:2012/3/5 11:32:00
请教一个sql 语句  发帖心情 Post By:2022/7/17 8:42:00 [只看该作者]

 表1  计划表

产品号   开始时间             结束时间                 计划数
A1       1-1 00:00          1-1 11:59               50
A1       1-1 12:00          1-1 23:59               60
A2       1-1 00:00          1-1 11:59               70

表2      实绩表
产品号   日期             数量
A1         1-1  6:15    10
A1         1-1  6:16     15
A2         1-1  3:15     20
A1         1-1 15:50   30

求出一个视图表3
产品号   开始时间             结束时间                 计划数         实际数
A1       1-1 00:00          1-1 11:59               50               25
A1       1-1 12:00          1-1 23:59               60               30
A2       1-1 00:00          1-1 11:59               70               20

请问这个视图怎么写,
[此贴子已经被作者于2022/7/18 9:05:53编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112380 积分:572162 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/7/17 20:38:00 [只看该作者]

select a.*,b.实际数总和 from {表1} as a inner join (select 产品号,日期,sum(数量) as 实际数总和 from {表2} group by 产品号,日期) as b on a.产品号 = b.产品号 and a.日期 = b.日期

 回到顶部
帅哥哟,离线,有人找我吗?
ljh29206
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1368 积分:12195 威望:0 精华:0 注册:2012/3/5 11:32:00
  发帖心情 Post By:2022/7/18 9:11:00 [只看该作者]

 篮板 在请教一下

按时间段汇总

s elect a.*,b.实际数总和 from {表1} as a inner join (s elect 产品号,日期,sum(数量) as 实际数总和 from {表2} group by 产品号 ,日期) as b on a.产品号 = b.产品号 and a.开始时间 <= b.日期 and a.结束时间 > b.日期

我改了,但数据结果(实际数汇总)只有1.

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112380 积分:572162 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/7/18 9:25:00 [只看该作者]

请上传实例测试

 回到顶部
帅哥哟,离线,有人找我吗?
kaiyu
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:789 积分:8018 威望:0 精华:0 注册:2014/4/21 15:16:00
  发帖心情 Post By:2022/7/18 9:50:00 [只看该作者]

 se lect 产品号,开始时间,结束时间,计划数,(se lect sum(数量) as 实际数 from 实际表 where 产品号 = a.产品号
 and 日期 between a.开始时间 and a.结束时间) as 实际数 from 计划表 a,试一下行不行

 回到顶部
帅哥哟,离线,有人找我吗?
ljh29206
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1368 积分:12195 威望:0 精华:0 注册:2012/3/5 11:32:00
  发帖心情 Post By:2022/7/18 10:01:00 [只看该作者]

篮版
请看附件
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.foxdb



 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112380 积分:572162 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/7/18 10:16:00 [只看该作者]

使用的什么数据库?如果是SqlServer,参考5楼用法

 回到顶部
帅哥哟,离线,有人找我吗?
ljh29206
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1368 积分:12195 威望:0 精华:0 注册:2012/3/5 11:32:00
  发帖心情 Post By:2022/7/18 10:41:00 [只看该作者]

请教2位

语句可以获得汇总数,

但是 日期 比较 只是  年月日的 比较

少了时分秒   ,  这个可以怎么弄呢

 回到顶部
帅哥,在线噢!
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112380 积分:572162 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/7/18 10:43:00 [只看该作者]

日期正常都是比较到时分秒甚至毫秒的

 回到顶部