RPostgreSQL-将R中的参数传递给RPostgreSQL中的查询 [英] RPostgreSQL - Passing Parameter in R to a Query in RPostgreSQL

查看:101
本文介绍了RPostgreSQL-将R中的参数传递给RPostgreSQL中的查询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问题:如何在RPostgreSQL查询中传递变量?

Question: How do I pass a variable in the RPostgreSQL query?

示例:在下面的示例中,我尝试将日期"2018-01-03"传递给查询

Example: In the example below I try to pass the date '2018-01-03' to the query

library(RPostgreSQL)

dt <- '2018-01-03'

connect <- dbConnect(PostgreSQL(), 
                 dbname="test",
                 host="localhost",
                 port=5432,
                 user="user", 
                 password="...")
result <- dbGetQuery(connect,
                "SELECT * FROM sales_tbl WHERE date = @{dt}")

推荐答案

您可以使用paste0生成查询并将其传递给dbGetQuery:

You can use paste0 to generate your query and pass it to dbGetQuery:

library(RPostgreSQL)

dt <- '2018-01-03'

connect <- dbConnect(PostgreSQL(), 
  dbname="test",
  host="localhost",
  port=5432,
  user="user", 
  password="...")

query <- paste0("SELECT * FROM sales_tbl WHERE date='", dt, "'")
result <- dbGetQuery(connect, query)

这篇关于RPostgreSQL-将R中的参数传递给RPostgreSQL中的查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆