- 已编辑
今天看了怎么在rmd文件中直接嵌入SQL。链接如下:https://rmarkdown.rstudio.com/authoring_knitr_engines.html
以下为我的代码:
```{r setup}
library(DBI)
library(RMySQL)
# 这里的数据库链接信息我改了
db <- dbConnect(MySQL(),
dbname='dbtest',
username='user_test',
password='password',
host='10.10.101.10',
port=3306
)
# 创建默认连接
knitr::opts_chunk$set(connection = "db")
# 设置字符,以免中文查询乱码
dbSendQuery(db,'SET NAMES utf8')
# 设置日期变量,以运用在SQL中
idate <- "2018-05-03"
请忽略我 ```
SQL中使用R的变量并将结果输出为数据框
```{sql,output.var="data_output"}
SELECT * FROM user_table where date_format(created_date,'%Y-%m-%d')>=?idate
请忽略我```
以上代码会将SQL的运行结果存在data_output这是数据库中。
此时,我有一个问题,如果SQL比较长,为了代码美观,把带有变量的SQL保存为.sql脚本,
那怎么在SQL的chunk中直接导入SQL文件?我用了source貌似不行