从子字符串信息 sql 中填充时间戳列
Posted
技术标签:
【中文标题】从子字符串信息 sql 中填充时间戳列【英文标题】:Fill a timestamp column from substring info sql 【发布时间】:2014-02-20 10:55:15 【问题描述】:我有一个表 MyTable 定义为:
CREATE TABLE MyTable (id SERIAL NOT NULL, description VARCHAR, date TIMESTAMP)
在此表中,description
填充了诸如“TOP_XXXXXXXXXXXXX.tsp”之类的字符串,其中 13 个字符长的“XXX”是应该在date
列中的时间戳值。但是,date
列未填写或填写错误。
我想创建一条 SQL 语句,用从 description
列解析的正确值填充 date
列。我使用 H2 数据库。
【问题讨论】:
使用SUBSTRING函数h2database.com/html/functions.html#substring 感谢您的评论。对我来说最有问题的部分实际上是更新表的语法 我认为是这样的:update MyTable set date = cast(substring(description, 4, 13) as datetime) where date is null (我想你在UPDATE命令之前有NULL该列) 【参考方案1】:UPDATE MyTable
SET [date] = CAST(SUBSTR([description], 4, 13) AS DATETIME)
【讨论】:
以上是关于从子字符串信息 sql 中填充时间戳列的主要内容,如果未能解决你的问题,请参考以下文章
在sqlserver中怎么将一个时间字符串值转换成时间戳的数字形式
使用 sql 将字符串纪元代码从 unix 时间戳转换为日期
如何将格式为“3/22/2018 12:24:29 PM”的日期时间字符串格式化为sql时间戳以插入内存数据库中的h2?