将R markdown参数传递给sql查询

时间:2018-02-28 08:36:56

标签: r r-markdown

我正在尝试编写一个R markdown文件,用户可以选择一个参数,然后将其传递给查询。 它会是这样的:

---
title: "markman"
output:
  html_document:
   css: faded.css
params:
  data: 'Johnny'
 ---



## Data

``{r echo = FALSE}


library(RPostgreSQL)
con<-dbConnect(dbDriver("PostgreSQL"), dbname="db", 
host="localhost", port=5432, user="user",password="pass")

query <- paste("select * from table where name= params$data")

data <-dbGetQuery(con,query)

summary(data)

但是我得到了错误。每当我尝试用参数编织时,我得到的是我的文件没有定义参数。 ```

1 个答案:

答案 0 :(得分:0)

我认为您只需要更改查询字符串:

query <- paste0("select * from table where name ='", params$data, "'")

此外,您的yaml标签不正确。尝试删除这里的空格:

---
title: "markman"
output:
  html_document:
   css: faded.css
params:
  data: 'Johnny'
 ---

查看最后一行,即---。前面有一些空间需要拆除。