有朋友在FB上問到,他們將日期的分隔符號都置換成空字串後的字串,要如何將它再轉回成DateTime呢?

例如日期 2013/04/02 14:08:37 會轉成 20130402140837 。 要如何將它再轉回成DateTime呢?

有想到以下的方式,

01 DECLARE @DateTimeVaue VARCHAR(30)
02 SET @DateTimeVaue = '20130402140837' -- 2013/04/02 14:08:37
03    
04 --使用字串函數先將字串轉成日期格式字串再轉成DateTime     (20130402140837 => 20130402 14:08:37)
05 SELECT  CONVERT(DATETIME, LEFT(@DateTimeVaue, 8) + ' '
06         + SUBSTRING(@DateTimeVaue, 9, 2) + ':' 
07         + SUBSTRING(@DateTimeVaue, 11, 2) + ':'
08         + RIGHT(@DateTimeVaue, 2), 112)
09   
10 --使用DATEADD來將時間加總
11 SELECT  DATEADD(s, CAST(RIGHT(@DateTimeVaue, 2) AS INT),
12                 DATEADD(n, CAST(SUBSTRING(@DateTimeVaue, 11, 2) AS INT),
13                         DATEADD(hh,
14                                 CAST(SUBSTRING(@DateTimeVaue, 9, 2) AS INT),
15                                 CONVERT(DATETIME, LEFT(@DateTimeVaue, 8), 112))))

網路上查到的做法「how can i convert 'yyyymmddhhmmss' to datetime」,如下,

1 -- 使用STUFF先將字串轉成日期格式字串再轉成DateTime   (20130402140837 => 20130402 14:08:37)    
2 DECLARE @DateTimeVaue VARCHAR(30)
3 SET @DateTimeVaue = '20130402140837' -- 2013/04/02 14:08:37
4 SELECT  CONVERT(DATETIME, STUFF(STUFF(STUFF(@DateTimeVaue, 9, 0, ' '), 12, 0, ':'), 15, 0, ':'))

不知各位是否有其他的方式呢

如何將字串yyyyMMddHHmmss轉成Datetime呢?的更多相关文章

  1. Oracle的字串處理

    Oracle的字串處理 除了寫程式之外,資料庫的應用也是蠻重要的,而SQL語法,用法大致相同,但各公司所出的資料庫還是有所差別,而ORACLE SQL給了相當多的函數應用,下面列了一些函法的名稱和用法 ...

  2. #Windows Phone:在HTML5专案中,如何从Javascript传送字串到C#的APP端

    原文:#Windows Phone:在HTML5专案中,如何从Javascript传送字串到C#的APP端 #Windows Phone:在HTML5专案中,如何从Javascript传送字串到C#的 ...

  3. 用ColorMatrix將Bitmap轉成灰度图

    在Android中,若想將整張圖片轉成灰階效果其實有更簡便的方式,只要透過ColorMatrix類別的setSaturation函式將飽和度設為0即可.(您也可以試試從0~1之間的值,看看不同飽和度的 ...

  4. PHP 分割字串 Function 的速度比較(substr/sscanf/preg_match)---substr最快!

    固定長度的字串(假設是 06481a63041b578d702f159f520847f8), 要照固定格式做切割, 使用 PHP 要怎麼切會比較快? 註: 要將此字串切成 => 06 / 48 ...

  5. 如何使用 Python 進行字串格式化

    前言: Python有几种方法可以显示程序的输出:数据可以以人类可读的形式打印出来,或者写入文件以供将来使用. 在开发应用程式时我们往往会需要把变数进行字串格式化,也就是说把字串中的变数替换成变量值. ...

  6. C# 字符串string类型转换成DateTime类型 或者 string转换成DateTime?(字符串转换成可空日期类型)

    在c#中,string类型转换成DateTime类型是经常用到的,作为基本的知识,这里在此做个小结.一般来说可以使用多种方法进行转换,最常用的就是使用Convert.ToDateTime(string ...

  7. 字符串string类型转换成DateTime或DateTime?类型

    常用的Convert.ToDateTime方法 //将含有正确日期格式的string类型转换成DateTime类型 string strDate = "2014-08-01"; D ...

  8. .net core 1.1.0 MVC 控制器接收Json字串 (JObject对象) (一)

    .net core 1.1.0 MVC 控制器接收Json字串 (JObject对象) (二) Json是WEB交互常见的数据,.net core 处理方式是转为强类型,没有对应的强类型会被抛弃,有时 ...

  9. PHP - 传入WebService服务端带中文字符的序列化字串不能反序列化的解决方法

    因工作需要,用了web服务,通过远程调用的方式来检索雅虎拍卖数据.前几天遇到一个问题,现在记录一下 客户端: $res = $this->client->call('Get_YahooDa ...

随机推荐

  1. CSS实现鼠标悬浮无限向下级展示的简单代码

    *{ margin:; padding:; } ul,li{ list-style: none; } .ui-slide-box{ width: 300px; } .ui-slide-item{ wi ...

  2. HBase配置性能调优

    因官方Book Performance Tuning部分章节没有按配置项进行索引,不能达到快速查阅的效果.所以我以配置项驱动,重新整理了原文,并补充一些自己的理解,如有错误,欢迎指正. 配置优化 zo ...

  3. 用dlopen,dlsym加载动态链接库.so中函数

    代码如下 static void *findSymbol(const char *path, const char *symbol) { void *handle = dlopen(path, RTL ...

  4. 新型DenseBody框架:一张照片获得3D人体信息

    来自云从科技和上海交通大学的研究者近期提出一种新型框架 DenseBody,可直接从一张彩色照片中获取 3D 人体姿势和形状.该研究设计了一种高效的 3D 人体姿势和形状表示,无需中间表示和任务,端到 ...

  5. vue实现未登录跳转到登录页面

    环境:vue 2.9.3; webpack;vue-router 目的:实现未登录跳转 例子:直接在url地址栏输入...../home,但是这个页面要求需要登陆之后才能进入,判断的值就通过登陆之后给 ...

  6. 用jQuery实现简单的简单的轮播图

    图片来源 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...

  7. (转)处理SQL中的异常并记录错误日志

    原文地址 创建错误日志表: ),ErrState ),ErrLine )) --创建错误日志记录存储过程: CREATE PROCEDURE ErrorLog AS SELECT ERROR_NUMB ...

  8. StanFord ML 笔记 第六部分&&第七部分

    第六部分内容: 1.偏差/方差(Bias/variance) 2.经验风险最小化(Empirical Risk Minization,ERM) 3.联合界(Union bound) 4.一致收敛(Un ...

  9. android 开发 RecyclerView 横排列列表布局

    1.写一个一竖的自定义布局: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xml ...

  10. 《算法》第二章部分程序 part 5

    ▶ 书中第二章部分程序,加上自己补充的代码,包括利用优先队列进行多路归并和堆排序 ● 利用优先队列进行多路归并 package package01; import edu.princeton.cs.a ...