psycopg2 - psycopg2 sql.SQL 如何实现时间戳> now() - INTERVAL '8 days'?
问题描述
需要从多个表中选择新的记录,超过 8 天
这不起作用:(
self._getRawData = sql.SQL("SELECT * FROM {} WRERE {} > NOW() - INTERVAL {}")
...
cur = self._conn.cursor()
cur.execute(self._getRawData.format(sql.Identifier('MyTS.MyTable'), \
sql.Identifier('Timestamp'), \
sql.Identifier('8 days')))
psycopg2.errors.SyntaxError:“时间戳”处或附近的语法错误
下面工作正常,但我想要 2 为几个表实现 sql.SQL - 有什么建议吗?
statement = "SELECT * FROM \"MyTS\".\"MyTable\" WHERE \"Timestamp\" > NOW() - INTERVAL \'8 days\'"
cur = self._conn.cursor()
cur.execute(statement)
更新!解决了!Thabks 4评论中的建议!
self._getRawData = sql.SQL("SELECT * FROM {}.{} WHERE {} > NOW() - INTERVAL {}")
...
sql.Literal('8 days')))
解决方案
推荐阅读
- plugins - Jmeter Perfmon 插件未显示任何图形详细信息
- ssis - 在 SSIS Oracle 连接字符串中存储敏感密码
- python - MatPlotLib Pcolormesh 没有正确覆盖
- sed - 删除 text1 和(text2 或行尾)之间的所有字符
- python - Pandas - 创建新列并根据过滤器分配值
- apache-kafka - 即使设置 acks=all,Kafka 生产者也会丢失消息
- mysql - Acces denied on rails test database
- python - 从数据框中删除行,其值在整列中仅出现一次
- python - 如何在两个单独的数据框中保持相同的 uuid?
- java - 如何将 Java 对象传递给另一个类以使用 Camunda 在执行方法中执行