[英]VB.net SQL statement to query 1 yr old Timestamp
我想在网格视图中显示其时间戳不超过当前日期1年的所有数据。
我的时间戳格式如下: 20110125-071830
或yyyymmdd-hhmmss
我试图参考:
检索不到一天的行 :
Select * from table_name WHERE DATE(timestampVal) > DATE(NOW() - INTERVAL 1 YEAR);
但缺少表达标志
我还尝试了其他各种方法。 但是,我的timestampVal只是在格式上有所不同。
例如: https : //community.oracle.com/thread/2207956
使用编码: Select * from table_name WHERE timestampVal < sysdate - interval '1' year ;
但是出现错误: literal does not match format string
,这意味着sysdate无法读取我的格式。
如何查询我的时间戳以提取所有一年或更短的时间?
仅供参考:timestampVal是字符串类型[varchar]
看起来以下应该工作:
Select *
from table_name
WHERE TO_DATE(timestampVal, 'YYYYMMDD-HH24MISS') > sysdate - interval '1' year;
另请注意,我颠倒了比较的过程:您指示要在其中timestampVal
不早于1年前的行-因此timestampVal
应该大于(更新)当前时间减一年。
试试看。
祝你好运。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.