选择DISTINCT(日期)多次返回相同的日期 [英] select distinct(date) return the same date several time

查看:54
本文介绍了选择DISTINCT(日期)多次返回相同的日期的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

当我这样做时:

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

我明白了:

当我执行此查询时:

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

这就是我拥有的:

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

如何忽略Time In Date以便在我的First查询中只有一个结果?

推荐答案

尝试下面的查询,该查询只需将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

的详细信息

这篇关于选择DISTINCT(日期)多次返回相同的日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆