首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RSQlite参数化查询

RSQlite参数化查询
EN

Stack Overflow用户
提问于 2018-01-30 03:35:18
回答 1查看 163关注 0票数 0

我想不使用paste()将值插入到查询中,如下所示:

代码语言:javascript
复制
symbol<-'ES'
prices <- dbGetQuery(con,"SELECT * from fut_prices WHERE symbol LIKE '%:x%'", 
x=symbol)

上面返回的是fut_prices表中的所有列名,但没有返回行。我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2018-01-30 05:07:45

试试这个:

代码语言:javascript
复制
library(RSQLite)

con <- dbConnect(SQLite(), ":memory:")

DF <- data.frame(symbol = c("X", "ES"), price = 1:2, stringsAsFactors = FALSE)
dbWriteTable(con, "DF", DF)

s <- "SELECT * from DF where symbol LIKE '%' || :x || '%'"
symbol <- "ES"
bind.data <- data.frame(x = symbol, stringsAsFactors = FALSE)
dbGetPreparedQuery(con, s, bind.data = bind.data)

给予:

代码语言:javascript
复制
  symbol price
1     ES     2
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48508701

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档