开始使用免费开始使用

日期比较

在处理时间戳时,您有时会想找到某一天内的所有记录。然而,如果在比较中只指定日期,可能会得到出乎意料的结果。如下查询:

SELECT count(*) 
  FROM evanston311
 WHERE date_created = '2018-01-02';

返回 0,尽管在 2018 年 1 月 2 日当天有 49 个请求。

原因是当与时间戳进行比较时,日期会被自动转换为时间戳,时间字段都会被设为 0:

SELECT '2018-01-02'::timestamp;
 2018-01-02 00:00:00

在同时处理时间戳和日期时,您需要牢记这一点。

本练习是课程的一部分

SQL 中的探索性数据分析

查看课程

交互式实操练习

通过完成这段示例代码来试试这个练习。

-- Count requests created on January 31, 2017
SELECT count(*) 
  FROM evanston311
 WHERE ___;
编辑并运行代码