![]() |
1
4
假设您有一个名为
假设你有一个
编辑
在回顾了这个问题之后,我看到了关于滑动比例的评论。这大大增加了查询的复杂性,但它仍然可行。修改后的查询现在还取决于两个变量的存在。
|
![]() |
2
2
亚当的回答比我想的要彻底得多,但我认为把它写成一个查询可能不是正确的方法。 是否考虑过创建一个存储过程,该存储过程将逐步创建并填充一个临时表。 临时表将具有您要查找的结果集的形状。初始插入将创建基本数据集(基本上是要用键标识符返回的行数,然后是要返回的任何其他行数,这些行数可以很容易地作为同一查询的一部分进行组装)。 然后对临时表进行一系列更新,以组装更复杂数据的每个部分。 最后,将其全部选回并删除临时表。 这样做的好处是,它可以让你在脑海中把它分解,然后一次组装一点,这样你就可以更容易地发现哪里出了问题。这也意味着更复杂的钻头可以分几个阶段组装。 此外,如果出现了一些可怜的SOD,而且事后必须调试整个系统,那么他就更容易追踪到底发生了什么。 |
![]() |
3
0
编辑:这个答案没有考虑到下面的要求,但似乎有一堆新的解释,所以我想我会把它留在这里。
好的,假设报告周期是每月一次,并且使用一个实际的if可以区分两个有效的费率(对于count=1和count>1),那么:
(我想像“ref”和“count”这样的名字在上面选择得不太好。) |
![]() |
Community wiki · SQL语法新手 1 年前 |
![]() |
KateMak · 是否将多行中的多列与唯一id组合? 1 年前 |
![]() |
Karuna · SQL中列内的筛选器[重复] 1 年前 |
![]() |
Irvan Affandy · 为另一个选择选择声明的键 1 年前 |
![]() |
Community wiki · 这个MySQL语句出了什么问题? 1 年前 |
![]() |
Community wiki · 优化从同一表中提取的多列的查询 1 年前 |