gpt4 book ai didi

sql - R:粘贴中的双引号,如何消除反冲

转载 作者:行者123 更新时间:2023-12-03 18:44:10 24 4
gpt4 key购买 nike

这似乎是一个反复出现的老问题,但是我发现的任何帖子都不适合我的情况。我有这个简单的SQL查询:

min.t <- "2017-10-17 00:00:00"
max.t <- "2017-10-17 08:00:00"
query <- paste0('select * from pred where \"current.time\">\"',min.t,'\" and
\"current.time\"<\"',max.t,'\"')
"select * from pred where \"current.time\">\"2017-10-17 00:00:00\" and
\"current.time\"<\"2017-10-17 08:00:00\""


如您所见,由于简单的引用,反冲仍然存在。我需要保留查询的简单引号,因为列名包含一个点。如果我从粘贴中除去间隙,则得到相同的结果:

paste0('select * from pred where "current.time">"',min.t,'" and 
"current.time"<"',max.t,'"')
[1] "select * from pred where \"current.time\">\"2017-10-17 00:00:00\" and
\"current.time\"<\"2017-10-17 08:00:00\""




 gsub('\\\\', '', query)


似乎无视他们。

最佳答案

我会这样表达您的原始SQLite查询:

select *
from pred
where
"current.time" > '2017-10-17 00:00:00' and
"current.time" < '2017-10-17 08:00:00';


在R中,您可以在字符变量中使用上述完全相同的查询,例如

query <- paste0("select * from pred where \"current.time\" > '2017-10-17 00:00:00' ",
"and \"current.time\" < '2017-10-17 08:00:00'")


请注意,我们可以简化您的 WHERE子句并使用 BETWEEN,这将导致以下情况:

query <- paste0("select * from pred where \"current.time\" between ",
"'2017-10-17 00:00:01' and '2017-10-17 07:59:59'")

关于sql - R:粘贴中的双引号,如何消除反冲,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46813899/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com