R 相同的查询,不同的结果。可能的原因?

R 相同的查询,不同的结果。可能的原因?,r,postgresql,rstudio,squirrel-sql,rpostgresql,R,Postgresql,Rstudio,Squirrel Sql,Rpostgresql,出于测试目的,我使用两种不同的GUI(RStudio和SquirreSQL)从同一数据库查询同一个表 SquirreLSQL控制台中的查询如下所示: select count(distinct idstr) from fact_table where date::date='2014-10-30' and (w>0 or x>0 or y>0) 在RStudio中,我有以下代码: library(RPostgreSQL) drv <- dbDriver("Postgre

出于测试目的,我使用两种不同的GUI(RStudio和SquirreSQL)从同一数据库查询同一个表

SquirreLSQL控制台中的查询如下所示:

select count(distinct idstr) from fact_table where date::date='2014-10-30' and (w>0 or x>0 or y>0)
在RStudio中,我有以下代码:

library(RPostgreSQL)
drv <- dbDriver("PostgreSQL")
con <- dbConnect(drv,"databaseconnectionstring",user ="usr",password ="pwd",dbname = "db") 
res <- dbSendQuery(con, "select count(distinct idstr) from fact_table where date::date='2014-10-30' and (w>0 or x>0 or y>0)")
库(RPostgreSQL)

多亏了Jakub的回答,我意识到GUI在不同的时区。为了解决这个问题,我在SquirreLSQL中运行了以下SQL行以找到正确的时区:

SELECT  current_setting('TIMEZONE')
dbGetQuery(con, "SET TIMEZONE TO 'America/New_York'") 
它返回“America/New_York”,因此我随后在R中运行以下行,以获得同一时区的两个程序:

SELECT  current_setting('TIMEZONE')
dbGetQuery(con, "SET TIMEZONE TO 'America/New_York'") 

我认为它与日期有关,因为我只使用变量对它进行了测试,结果成功了。您是否尝试查询当前时间的数据库?看来唯一不同的地方就是时区。就是它,@JakubKania!非常感谢。