sql - 如何在 dbGetQuery 函数中正确写入表名?

标签 sql r postgresql

我在 dbGetQuery 函数中指定表名时遇到问题。

命令

data1 <- dbGetQuery(con, "select * from bank_schema.capital")

效果很好。

但是命令

data1 <- dbGetQuery(con, "select * from bank_schema.135_ratios")

抛出一个错误。

其中 con 是 postgreSQL 数据库的连接对象。

请帮我找到出路。

提前致谢。

最佳答案

Postgres 默认不支持以数字开头的表名(其他 RDBMS 也有同样的限制)。您需要引用表名。考虑:

data1 <- dbGetQuery(con, 'select * from bank_schema."135_ratios"')

或者:

data1 <- dbGetQuery(con, "select * from bank_schema.\"135_ratios\"")

但更好的是,将表格重命名为更标准的名称(即不以数字开头)会更简单,例如 ratios_135

关于sql - 如何在 dbGetQuery 函数中正确写入表名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58792944/

相关文章:

sql - 使用时间戳查询 MySQL 数据库

r - 有条件地从 data.frame 中删除重复项

java - 如何在不耗尽内存的情况下使用 JDBC 将大量数据加载到文件中?

database - R:是否有更快的方法将大数据框中的列从字符转换为 POSIXct 日期时间?

r - 如何找到与当前行相比的接下来 10 秒内的最后一个观察结果?

postgresql - 如何从全文搜索词典中获取单词列表

function - Postgres 9.0.4 : Error calling function which returns a ROWTYPE from within another function

php - 在 MySQL 中输入海量数据

python - 在存在条件的数据库中查找非唯一值

mysql - 是否可以将 COUNT() 与 SELECT in HAVING 子句的单个结果进行比较?