PostgreSQL - 其中日期时间 <= YEAR-MONTH-DAY,忽略时间

Ost*_*PHP 3 sql postgresql datetime timestamp date

日期列 - 日期时间类型。

我的查询是:

select * from car_db.car_parts where date::text LIKE '2018-07-06%'
Run Code Online (Sandbox Code Playgroud)

我如何select where date <= 'YEAR-MONTH-DAY',而忽略时间?

我会很感激...

Gor*_*off 6

首先,Postgres 不提供datetime类型。该类型称为timestamp. 另外,Postgres 有一个非常方便的功能date_trunc(),所以你可以使用它:

select *
from car_db.car_parts
where date_trunc('day', date) = '2018-07-06'::date;
Run Code Online (Sandbox Code Playgroud)

但是,此方法(或任何具有函数调用或类型转换的方法)可能会影响索引的使用。我强烈推荐:

where date >= '2018-07-06'::date and
      date < '2018-07-07'::date
Run Code Online (Sandbox Code Playgroud)