我正在使用一个表,其中事件的日期和时间以 YYYMMDDHHmmSS 或“20120606122012”格式存储为字符。我需要将此与当前时间戳进行比较,以查看事件发生后是否超过 20 分钟,但这似乎比我预期的要困难。
是否有可能做到这一点,或者如果没有:是否有不同的方法有效?
我正在使用一个表,其中事件的日期和时间以 YYYMMDDHHmmSS 或“20120606122012”格式存储为字符。我需要将此与当前时间戳进行比较,以查看事件发生后是否超过 20 分钟,但这似乎比我预期的要困难。
是否有可能做到这一点,或者如果没有:是否有不同的方法有效?
进行一些字符串操作以将字符串转换为格式
YYYYMMDD HH:mm:SS
,然后您可以转换/转换为datetime
.像这样的东西:
您还可以将其添加为计算列或使其成为视图的一部分,这样您就不必在每个查询中一遍又一遍地执行计算。
作为计算列:
由于计算是确定性的,它可以被持久化和/或索引。
使用视图:
然后你可以简单地说:
虽然我必须同意其他人的观点 - 你需要修复模型。将其存储为字符串没有任何好处,除非您的用户在输入非日期垃圾(
whosawatsa
例如20120230000000
.