排序顺序未被分解
Sort order not being broken down
我想做一个简单的查询,我想按日期、小时和分数排序,其中日期和小时来自同一字段 (epoch_seconds)。到目前为止,我已经完成了以下工作:
SELECT cast(epoch_seconds as date) as d, hour(cast(epoch_seconds as time)) as t, score as s
FROM MyTable
order by cast(epoch_seconds as date), hour(cast(epoch_seconds as time)) desc, s asc
limit 10;
我 运行 遇到的问题是,当有日期时,它似乎按日期和时间排序,使其他排序变得毫无意义(因为它下降到第二个)我通过尝试测试了这个以下,它工作正常。
SELECT TO_DATE('1986-12-11') d, hour(cast(epoch_seconds as time)) as t, score as s
FROM MyTable
order by d, hour(cast(epoch_seconds as time)) desc, s asc
limit 10;
有没有办法在忽略时间的情况下按日期排序?
谢谢
编辑:
为了证明我的理论,我尝试了以下方法
TO_CHAR(cast(epoch_seconds as date))
并显示
2020-09-02 14:53:30.313
所以我在发布后不久就搞清楚了。
它并不漂亮,但它确实有效。
select subStr(TO_CHAR(cast(epoch_seconds as date)),0,10) as d,
cast(epoch_seconds as time) as t
From table
order by d, t
我想做一个简单的查询,我想按日期、小时和分数排序,其中日期和小时来自同一字段 (epoch_seconds)。到目前为止,我已经完成了以下工作:
SELECT cast(epoch_seconds as date) as d, hour(cast(epoch_seconds as time)) as t, score as s
FROM MyTable
order by cast(epoch_seconds as date), hour(cast(epoch_seconds as time)) desc, s asc
limit 10;
我 运行 遇到的问题是,当有日期时,它似乎按日期和时间排序,使其他排序变得毫无意义(因为它下降到第二个)我通过尝试测试了这个以下,它工作正常。
SELECT TO_DATE('1986-12-11') d, hour(cast(epoch_seconds as time)) as t, score as s
FROM MyTable
order by d, hour(cast(epoch_seconds as time)) desc, s asc
limit 10;
有没有办法在忽略时间的情况下按日期排序?
谢谢
编辑:
为了证明我的理论,我尝试了以下方法
TO_CHAR(cast(epoch_seconds as date))
并显示
2020-09-02 14:53:30.313
所以我在发布后不久就搞清楚了。
它并不漂亮,但它确实有效。
select subStr(TO_CHAR(cast(epoch_seconds as date)),0,10) as d,
cast(epoch_seconds as time) as t
From table
order by d, t