gpt4 book ai didi

sql - select distinct(date) 多次返回相同的日期

转载 作者:行者123 更新时间:2023-12-02 15:31:43 26 4
gpt4 key购买 nike

在我的 Oracle 数据库中,我有一个表,其中有一列的数据类型为 Date

当我这样做时:

select distinct(MY_DATE) from MY_TABLE where extract(year from MY_DATE) = 2014;

我明白了:

Result

当我执行此查询时:

select MY_DATE from MY_TABLE where extract(year from MY_DATE) = 2014;

这就是我所拥有的:

Result

我猜是因为秒和毫秒不同吧。

如何忽略日期中的时间以在我的第一个查询中只有一个结果?

最佳答案

尝试下面的查询,它只是将 TRUNC() 添加到您的日期列,然后再获取它的 DISTINCT

select distinct(TRUNC(MY_DATE)) from MY_TABLE where extract(year from MY_DATE) = 2014;

这是因为你的列数据中的时间因素不一样。

TRUNC() 会取消时间元素,只保留日期

查询实际上会揭示它。 TO_CHAR() 以指定格式输出保存的日期。

select TO_CHAR(MY_DATE,'MM-DD-YYYY HH24:MI:SS') from MY_TABLE where extract(year from MY_DATE) = 2014;

更多关于 TRUNC 来自 Oracle Docs

关于sql - select distinct(date) 多次返回相同的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25239444/

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