SQL - 计算时间'句点'

时间:2016-05-10 10:54:28

标签: sql tsql

我正在编写来自2个不同数据源的报告。请求是我提供每小时的销售,报价和电话细分,以便我可以提供报价率等电话。

电话数据的格式为“每小时”,如下所示:

Date                    Start         Offered         Answered
----------------------- ------------- ------------------------------
2016-05-09 00:00:00.000 08:00         0             0
2016-05-09 00:00:00.000 09:00         7             5
2016-05-09 00:00:00.000 10:00         7             7
2016-05-09 00:00:00.000 11:00         7             6
2016-05-09 00:00:00.000 12:00         10            10
2016-05-09 00:00:00.000 13:00         5             5
2016-05-09 00:00:00.000 14:00         2             2
2016-05-09 00:00:00.000 15:00         2             2
2016-05-09 00:00:00.000 16:00         7             7
2016-05-09 00:00:00.000 17:00         7             7
2016-05-09 00:00:00.000 18:00         0             0
2016-05-09 00:00:00.000 19:00         0             0

这适合我到地面,所以我可以每小时显示数据,即在08:00和09:00之间没有电话报价,随后没有接听。

现在不同的是,报价/销售系统提供的时间为0932,1001等。

将这些行情/销售放入适当的“每小时”底池的最佳方法是什么。

即。 0932应该在09:00以下,1001应该是10:00。

基于时间的前两位数字,只是CASE语句的最佳方法,即

CASE WHEN SUBSTRING([QuoteTime],1,2) = 09 THEN '0900' END

我认为我可以通过这种方式实现这一目标,但这会很麻烦,而且会在很多行上产生很大影响。

思想?

0 个答案:

没有答案