SQL语句只返回一行,它应返回多行

时间:2014-08-25 03:34:53

标签: sql

我的数据库包含来自各种传感器的数据点。这些数据点每分钟拍摄两次。

我正在使用以下SQL查询尝试在两个不同的时间获取两个单独的数据点。

SELECT * 
FROM TableName 
WHERE TagName = 'TagName' 
  AND ("DateTime" = 'X' OR "DateTime" = 'Y')

我认为没有理由不返回2个数据点,一个用于第一个日期,一个用于第二个数据点,但由于某种原因,查询只返回Y的行。

我觉得我错过了一些非常明显的东西。

对于更多上下文,此查询与python脚本结合使用,以使用特定分辨率在两个日期之间获取数据。

有什么想法吗?

编辑:我认为它与数据库的结构有关,以及它如何为条目提供时间值。

我需要对此进行更多调查,因此我要将此问题标记为删除,感谢所有人的帮助

1 个答案:

答案 0 :(得分:-1)

不确定你的问题是不是错误,但如果没有,那么可能是"声明之后的AND

AND ("DateTime" = 'X' OR "DateTime" = 'Y')

应该是AND (DateTime = 'X' OR DateTime = 'Y')。请注意没有引号。

http://sqlfiddle.com/#!2/ed00ba/3