pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

將時(shí)間頻率拆分為行

Split Time Frequency To Rows(將時(shí)間頻率拆分為行)
本文介紹了將時(shí)間頻率拆分為行的處理方法,對(duì)大家解決問(wèn)題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧!

問(wèn)題描述

我正在嘗試將具有開(kāi)始時(shí)間、結(jié)束時(shí)間、頻率和持續(xù)時(shí)間的時(shí)間頻率拆分為單獨(dú)的行.以下是一些示例數(shù)據(jù):

I am trying to split a time frequency that has a start time, an end time, a frequency and a duration into separate rows. Here is some example data:

+------+------------+----------+-----------------+---------------+
| Name | Start_Time | End_Time | Frequency_Hours | Duration_Mins |
+------+------------+----------+-----------------+---------------+
| A    | 08:00:00   | 18:00:00 |               2 |             2 |
| B    | 00:00:00   | 23:59:59 |               1 |             5 |
| C    | 00:00:00   | 23:59:59 |               4 |            15 |
+------+------------+----------+-----------------+---------------+

可以使用以下查詢創(chuàng)建:

Can be created using the following query:

DECLARE @Tmp AS TABLE(Name VARCHAR(128)
                     ,Start_Time VARCHAR(8)
                     ,End_Time VARCHAR(8)
                     ,Frequency_Hours INT
                     ,Duration_Mins INT)

INSERT INTO @Tmp VALUES ('A','08:00:00', '18:00:00', 2,2)
                       ,('B','00:00:00', '23:59:59', 1,5)
                       ,('C','00:00:00', '23:59:59', 4,15)

這是我想要的輸出(然后我將使用它來(lái)驅(qū)動(dòng)甘特圖可視化):

Here is my desired output (I will then use this to drive a gantt chart visualisation):

+------+------------+----------+
| Name | Start_Time | End_Time |
+------+------------+----------+
| A    | 08:00:00   | 08:02:00 |
| A    | 10:00:00   | 10:02:00 |
| A    | 12:00:00   | 12:02:00 |
| A    | 14:00:00   | 14:02:00 |
| A    | 16:00:00   | 16:02:00 |
| A    | 18:00:00   | 18:02:00 |
| B    | 00:00:00   | 00:05:00 |
| B    | 01:00:00   | 01:05:00 |
| B    | 02:00:00   | 02:05:00 |
| B    | 03:00:00   | 03:05:00 |
| B    | 04:00:00   | 04:05:00 |
| B    | 05:00:00   | 05:05:00 |
| B    | 06:00:00   | 06:05:00 |
| B    | 07:00:00   | 07:05:00 |
| B    | 08:00:00   | 08:05:00 |
| B    | 09:00:00   | 09:05:00 |
| B    | 10:00:00   | 10:05:00 |
| B    | 11:00:00   | 11:05:00 |
| B    | 12:00:00   | 12:05:00 |
| B    | 13:00:00   | 13:05:00 |
| B    | 14:00:00   | 14:05:00 |
| B    | 15:00:00   | 15:05:00 |
| B    | 16:00:00   | 16:05:00 |
| B    | 17:00:00   | 17:05:00 |
| B    | 18:00:00   | 18:05:00 |
| B    | 19:00:00   | 19:05:00 |
| B    | 20:00:00   | 20:05:00 |
| B    | 21:00:00   | 21:05:00 |
| B    | 22:00:00   | 22:05:00 |
| B    | 23:00:00   | 23:05:00 |
| C    | 00:00:00   | 00:15:00 |
| C    | 04:00:00   | 04:15:00 |
| C    | 08:00:00   | 08:15:00 |
| C    | 12:00:00   | 12:15:00 |
| C    | 16:00:00   | 16:15:00 |
| C    | 20:00:00   | 20:15:00 |
+------+------------+----------+

我希望能夠從中創(chuàng)建一個(gè)視圖,因此我嘗試在沒(méi)有游標(biāo)或其他 CPU 密集型方法的情況下進(jìn)行.

I am hoping to be able to create a view out of this so I am trying to do it without cursors or other cpu intensive methods.

有什么想法嗎?

謝謝,

丹.

推薦答案

它也可以在沒(méi)有 RECURSIIVE CTE 的情況下完成.

It can be done without RECURSIIVE CTE also.

如果我們創(chuàng)建數(shù)字而不是使用選擇不同的數(shù)字 master..spt_values 那么性能會(huì)好很多.

If we create number instead of using select distinct number master..spt_values then performance will be far better.

Like Number 表可以填充從 1 到 100.

Like Number table can be populated from 1 to 100.

用各種樣本數(shù)據(jù)試試這個(gè),

try this with various sample data,

declare @t table(Name varchar(20), Start_Time time(0),End_Time time(0)
, Frequency_Hours int,Duration_Mins int)
insert into @t VALUES
 ('A','08:00:00','18:00:00', 2 , 2 )
,('B','00:00:00','23:59:59', 1 , 5 )
,('C','00:00:00','23:59:59', 4 ,15 )

SELECT NAME
    ,dateadd(hour, n, Start_Time) Start_Time
    ,dateadd(minute, Duration_Mins, (dateadd(hour, n, Start_Time))) End_Time
FROM @t t
CROSS APPLY (
    SELECT DISTINCT number * Frequency_Hours n
    FROM master..spt_values
    WHERE number >= 0
        AND number <= datediff(HOUR, t.Start_Time, t.End_Time) / Frequency_Hours
    ) ca

這篇關(guān)于將時(shí)間頻率拆分為行的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來(lái)源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問(wèn)題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

Converting Every Child Tags in to a Single Column with multiple Delimiters -SQL Server (3)(將每個(gè)子標(biāo)記轉(zhuǎn)換為具有多個(gè)分隔符的單列-SQL Server (3))
How can I create a view from more than one table?(如何從多個(gè)表創(chuàng)建視圖?)
Create calculated value based on calculated value inside previous row(根據(jù)前一行內(nèi)的計(jì)算值創(chuàng)建計(jì)算值)
How do I stack the first two columns of a table into a single column, but also pair third column with the first column only?(如何將表格的前兩列堆疊成一列,但也僅將第三列與第一列配對(duì)?) - IT屋-程序員軟件開(kāi)發(fā)技
Recursive t-sql query(遞歸 t-sql 查詢)
Convert Month Name to Date / Month Number (Combinations of Questions amp; Answers)(將月份名稱轉(zhuǎn)換為日期/月份編號(hào)(問(wèn)題和答案的組合))
主站蜘蛛池模板: 南汇8424西瓜_南汇玉菇甜瓜-南汇水蜜桃价格 | 橡胶接头_橡胶软接头_套管伸缩器_管道伸缩器厂家-巩义市远大供水材料有限公司 | 广州云仓代发-昊哥云仓专业电商仓储托管外包代发货服务 | 山东氧化铁红,山东铁红-淄博科瑞化工有限公司 | 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库-首页-东莞市傲马网络科技有限公司 | 杭州荣奥家具有限公司-浙江办公家具,杭州办公家具厂 | 杜康白酒加盟_杜康酒代理_杜康酒招商加盟官网_杜康酒厂加盟总代理—杜康酒神全国运营中心 | 车充外壳,车载充电器外壳,车载点烟器外壳,点烟器连接头,旅行充充电器外壳,手机充电器外壳,深圳市华科达塑胶五金有限公司 | 西门子伺服控制器维修-伺服驱动放大器-828D数控机床维修-上海涌迪 | 非标压力容器_碳钢储罐_不锈钢_搪玻璃反应釜厂家-山东首丰智能环保装备有限公司 | 七维官网-水性工业漆_轨道交通涂料_钢结构漆| 电动球阀_不锈钢电动球阀_电动三通球阀_电动调节球阀_上海湖泉阀门有限公司 | 新疆散热器,新疆暖气片,新疆电锅炉,光耀暖通公司 | 气力输送_输送机械_自动化配料系统_负压吸送_制造主力军江苏高达智能装备有限公司! | 莱州网络公司|莱州网站建设|莱州网站优化|莱州阿里巴巴-莱州唯佳网络科技有限公司 | 扬尘监测_扬尘监测系统_带证扬尘监测设备 - 郑州港迪科技有限公司 | 旋振筛_不锈钢旋振筛_气旋筛_旋振筛厂家—新乡市大汉振动机械有限公司 | 森旺-A级防火板_石英纤维板_不燃抗菌板装饰板_医疗板 | 首页|专注深圳注册公司,代理记账报税,注册商标代理,工商变更,企业400电话等企业一站式服务-慧用心 | 超声波流量计_流量标准装置生产厂家 _河南盛天精密测控 | 精密模具加工制造 - 富东懿 | 美名宝起名网-在线宝宝、公司、起名平台 | 视频直播 -摄影摄像-视频拍摄-直播分发 | 济南品牌包装设计公司_济南VI标志设计公司_山东锐尚文化传播 | 光泽度计_测量显微镜_苏州压力仪_苏州扭力板手维修-苏州日升精密仪器有限公司 | led冷热冲击试验箱_LED高低温冲击试验箱_老化试验箱-爱佩百科 | 双相钢_双相不锈钢_双相钢圆钢棒_双相不锈钢报价「海新双相钢」 双能x射线骨密度检测仪_dxa骨密度仪_双能x线骨密度仪_品牌厂家【品源医疗】 | 中高频感应加热设备|高频淬火设备|超音频感应加热电源|不锈钢管光亮退火机|真空管烤消设备 - 郑州蓝硕工业炉设备有限公司 | 产业规划_产业园区规划-产业投资选址及规划招商托管一体化服务商-中机院产业园区规划网 | 膜结构_ETFE膜结构_膜结构厂家_膜结构设计-深圳市烨兴智能空间技术有限公司 | 高铝矾土熟料_细粉_骨料_消失模_铸造用铝矾土_铝酸钙粉—嵩峰厂家 | 菏泽商标注册_菏泽版权登记_商标申请代理_菏泽商标注册去哪里 | 深圳办公室装修,办公楼/写字楼装修设计,一级资质 - ADD写艺 | 高温热泵烘干机,高温烘干热泵,热水设备机组_正旭热泵 | 对夹式止回阀厂家,温州对夹式止回阀制造商--永嘉县润丰阀门有限公司 | 广州展台特装搭建商|特装展位设计搭建|展会特装搭建|特装展台制作设计|展览特装公司 | 3d打印服务,3d打印汽车,三维扫描,硅胶复模,手板,快速模具,深圳市精速三维打印科技有限公司 | bkzzy在职研究生网 - 在职研究生招生信息咨询平台 | 哈希余氯测定仪,分光光度计,ph在线监测仪,浊度测定仪,试剂-上海京灿精密机械有限公司 | 空气弹簧|橡胶气囊|橡胶空气弹簧-上海松夏减震器有限公司 | 广州企亚 - 数码直喷、白墨印花、源头厂家、透气无手感方案服务商! |