[英]use character string in R inside SQL WHERE IN statement having issues with LIKE statement
[英]How to use character string in R inside SQL WHERE IN statement
我想在SQL查詢的WHERE子句中使用一串字符ID。 我的id對象看起來像這樣
ids
[1] "0000000000000000010000001" "0000000000000000010000002" "0000000000000000010000003"
[4] "0000000000000000010000004" "0000000000000000010000005" "0000000000000000010000006"
[7] "0000000000000000010000007" "0000000000000000010000008" "0000000000000000010000009"
[10] "0000000000000000010000010"
我想將該對象插入此SQL查詢中:
student <- sqlQuery(con,
"select
FSAS.a_id,
FSAS.grade,
FSAS.score,
FSAS.placement,
FSAS.start,
FSAS.completion
FROM db.Fact AS FSAS
WHERE FSAS.a_id IN ids"
)
我認為整個SQL查詢必須是字符串,但是我不知道如何正確處理。
我們可以使用paste
來創建表達式
expr1 <- sprintf("select
FSAS.a_id,
FSAS.grade,
FSAS.score,
FSAS.placement,
FSAS.start,
FSAS.completion
FROM db.Fact AS FSAS
WHERE FSAS.a_id IN (%s)", paste0(sQuote(ids, q = FALSE), collapse=", "))
sqlQuery(con, expr1)
這應該工作:
qry = paste("select
FSAS.a_id,
FSAS.grade,
FSAS.score,
FSAS.placement,
FSAS.start,
FSAS.completion
FROM db.Fact AS FSAS
WHERE FSAS.a_id IN", ids, sep = "")
student <- sqlQuery(con,
qry
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.