[英]How to get time value for multiple max/min values in query
我的表包含以下值:
[quote_date],[total_time],[supA_demB],[demA_supB],[demB_supA],[supB_demA]
我想运行这样的查询:
SELECT quote_date
,min(demA_supB) as MinDemASupB
,max(demA_supB) as MaxDemASupB
,min(supA_demB) as MinSupADemB
,max(supA_demB) as MaxSupADemB
,min(demB_supA) as MinDemBSupA
,max(demB_supA) as MaxDemBSupA
,min(supB_demA) as MinSupBDemA
,max(supB_demA) as MaxSupBDemA
FROM [dbo].[a_b_RatioTable]
GROUP BY quote_date
有什么方法可以向此查询中的每个混合/最大值添加total_time值?
喜欢:
SELECT quote_date
,min(demA_supB) as MinDemASupB
,something as MinDemASupBTime
,max(demA_supB) as MaxDemASupB
,something as MinDemASupBTime...
尝试这个,
SELECT quote_date
,min(demA_supB) as MinDemASupB
,(select total_time from [dbo].[a_b_RatioTable] where quote_date = r.quote_date and demA_supB = min(r.demA_supB)) MinDemASupBTotal
,max(demA_supB) as MaxDemASupB
,(select total_time from [dbo].[a_b_RatioTable] where quote_date = r.quote_date and demA_supB = max(r.demA_supB)) MaxDemASupBTotal
,min(supA_demB) as MinSupADemB
,(select total_time from [dbo].[a_b_RatioTable] where quote_date = r.quote_date and supA_demB = min(r.supA_demB)) MinSupADemBTotal
,max(supA_demB) as MaxSupADemB
,(select total_time from [dbo].[a_b_RatioTable] where quote_date = r.quote_date and supA_demB = max(r.supA_demB)) MaxSupADemBTotal
,min(demB_supA) as MinDemBSupA
.......
,max(demB_supA) as MaxDemBSupA
,min(supB_demA) as MinSupBDemA
,max(supB_demA) as MaxSupBDemA
FROM [dbo].[a_b_RatioTable] r
GROUP BY quote_date
注意:子查询可能会降低性能。
只需添加另一列作为total_time。 它将正常工作。
,min(demA_supB) as MinDemASupB
,max(demA_supB) as MaxDemASupB
,min(supA_demB) as MinSupADemB
,max(supA_demB) as MaxSupADemB
,min(demB_supA) as MinDemBSupA
,max(demB_supA) as MaxDemBSupA
,min(supB_demA) as MinSupBDemA
,max(supB_demA) as MaxSupBDemA
,total_time
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.