繁体   English   中英

R,RPostgreSQL:查询中的向量

[英]R, RPostgreSQL: a vector in a query

使用RPostgreSQL包,我必须使用stringvector进行查询:

dbGetQuery(con, "select from id_table where id_user in tmp")

tmp应该是长度为10k的列表或向量的情况下,该怎么办? 谢谢。

您可以使用paste0。 这是我获取state.abb数据集的示例

valid_state_logic=paste0("(",paste0("'",state.abb,"'", collapse=","),")")

print(valid_state_logic)
[1] "('DC','AL','AK','AZ','AR','CA','CO','CT','DE','FL','GA','HI','ID','IL','IN','IA','KS','KY','LA','ME','MD','MA','MI','MN','MS','MO','MT','NE','NV','NH','NJ','NM','NY','NC','ND','OH','OK','OR','PA','RI','SC','SD','TN','TX','UT','VT','VA','WA','WV','WI','WY')"

尝试这个:

query = sprintf("select * from id_table where id_user in (%s)", paste("'",tmp, "'",collapse=","))

dbGetQuery(con, query)

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM