0

彼ら。1 日あたりのイベント数をカウントするクエリがあります。しかし、日付が間違った形式で返されます。

select trunc(action_dt) as action_dt, count(*) as cnt
from stat.jurnal_orders
where action_dt between TO_DATE('17.05.12','DD/MM/YY') AND TO_DATE('12.11.13','DD/MM/YY')
group by trunc(action_dt)
order by action_dt asc

データベースには DD.MM.YYYY の日付がありますが、YYYY/MM/DD が必要です 誰かそのクエリを手伝ってくれませんか?

4

4 に答える 4

1

あなたには2つの選択肢があります

最初 - を使用して、クエリで必要な形式を明示的に設定しますTO_CHAR

select to_char(trunc(action_dt),'yyyy/mm/dd') as action_dt, count(*) as cnt
from stat.jurnal_orders
where action_dt between TO_DATE('17.05.12','DD/MM/YY') AND TO_DATE('12.11.13','DD/MM/YY')
group by to_char(trunc(action_dt),'yyyy/mm/dd')
order by action_dt asc

次に、nls_date_formatセッション レベルで を設定します。

alter session set nls_date_format = 'yyyy/mm/dd';

そして、あなたは質問します

select trunc(action_dt) as action_dt, count(*) as cnt
    from stat.jurnal_orders
    where action_dt between TO_DATE('2012/05/17') AND TO_DATE('2013/12/11')
    group by trunc(action_dt)
    order by action_dt asc
于 2013-09-30T05:27:02.067 に答える
0

試してくださいTO_CHAR

select TO_CHAR (sysdate, 'YYYY/MM/DD') from dual;
于 2013-09-30T05:26:32.370 に答える