openedge - 如何将 sql 脚本中的日期与进度数据库进行比较?
问题描述
我们的进度数据库中有一个字段是 DATETIME-TZ,因此数据示例是“23/05/2019 12:11:16.099” - 我需要一些帮助才能将此字段中的日期与 SQL 选择语句进行比较
在进行过程编辑器中,我可以轻松比较日期,例如
从 accadd 中选择日期(bond-no) where date(bond-no) <= Today
这工作得很好,但我需要通过 sql 获取网页的此信息并得到一个错误,甚至将字段分解为子字符串并使日期备份似乎不起作用
SELECT date(""bond-no"") FROM accadd WHERE date(""bond-no"") <= Date()
已经尝试了上述的变化,这也是......
DATE(SUBSTRING(""bond-no"",4,2),SUBSTRING(""bond-no"",1,2),SUBSTRING(""bond-no"",7,4))
这应该只返回比今天更早的日期,但只是得到旧的语法错误消息,所以我在某处遗漏了一些东西
[DataDirect][ODBC Progress OpenEdge Wire Protocol driver][OPENEDGE] SQL 语句中的语法错误,位于“) FROM accadd WHERE” (10713)
解决方案
在日期时间(无 -tz)字段上使用 JDBC 的 PDSOE 中使用 SQL 编辑器:
SELECT "bond-no" FROM pub.accadd WHERE "bond-no" <= CURDATE()
要使用静态日期:
SELECT "bond-no" FROM pub.accadd WHERE "bond-no" <= TO_DATE('5/31/2019')
或者:
SELECT "bond-no" FROM pub.accadd WHERE "bond-no" <= { d'5/31/2019' }
推荐阅读
- android - 从数据库异步加载数据
- python - 多行字符串到原始字符串 Python
- vba - 如何使用 VBA Selenium 通过 FindElementby ID 或 Xpath 方法查找元素
- android - Gradle sync failed: 系统找不到指定的路径
- perl - 在 Perl 中转换时间戳
- pop3 - 在 POP3 中,RETR 命令的预期第一响应行是什么?
- javascript - 从网页下载多个 JSON 时,AJAX 出错
- ios - 我可以从 IOS 收集 firebase 动态链接的 utm 参数吗?
- python - 如何知道 pygame.Rect 与其他 Rect 碰撞的一侧?
- visual-studio-2019 - 保存时 Gulp.js 手表在 VS 2019 中不起作用