组合查询,请高手指点

qq_27474405 2017-07-25 04:08:45
table1
fdat ldat cp sl zp sl id fit
2017-05-01 2017-07-30 a 1 b 1 001 1
2017-05-01 2017-07-30 b 1 b 1 001 1

2017-06-01 2017-07-15 b 1 c 1 002 1
2017-06-01 2017-07-15 c 1 c 1 002 1

2017-07-01 2017-07-10 b 1 e 1 002 1
2017-07-01 2017-07-10 d 1 e 1 002 0
........
table2
ID cp sl dat
d01 a 2 2017-06-10
d01 b 1 2017-06-10

d02 b 2 2017-07-05
d02 c 2 2017-07-05
d02 d 1 2017-07-05

d03 b 3 2017-07-08
d03 d 5 2017-07-08
...
结果

ID zp sl dat fit
d01 b 1 2017-06-10 1
d02 c 2 2017-06-05 1
d03 e 3 2017-07-08 0
...全文
274 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhouyuehai1978 2017-07-27
  • 打赏
  • 举报
回复
b 的日期也很奇怪,为什么是2017-06-10而不是2017-07-05,同样满足你的条件“table2中dat 介于table1 fdat和ldat之间.”
zhouyuehai1978 2017-07-27
  • 打赏
  • 举报
回复
结果中的e原始表中都没有,原始表中的d结果中没有,table1中的sl都是1,例子举的不好
二月十六 版主 2017-07-25
  • 打赏
  • 举报
回复
table2中sl最小值与table1 id对应的第一个sl 相乘得到结果中的sl. 这个什么意思?table2 sl最小的是1 然后怎么和table1 id对应的?
qq_27474405 2017-07-25
  • 打赏
  • 举报
回复
引用 1 楼 sinat_28984567 的回复:
什么规则楼主也说一下吧
table2 中cp与table1中cp相同, table2中dat 介于table1 fdat和ldat之间. table2中sl最小值与table1 id对应的第一个sl 相乘得到结果中的sl.
二月十六 版主 2017-07-25
  • 打赏
  • 举报
回复
什么规则楼主也说一下吧

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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