-2

たとえば、タイムスタンプから時間コンポーネントを削除するにはどうすればよいですか。

2014-01-01 12:00:01

なるために

2014-01-01 00:00:00
4

2 に答える 2

4

タイプから時間コンポーネントを削除する方法を実際に尋ねているようです。timestamp

いくつかのテストデータを設定しましょう:

CREATE TABLE public.test (
    time_stamp timestamp
);

INSERT INTO public.test (time_stamp) VALUES (SYSDATE());
INSERT INTO public.test (time_stamp) VALUES (SYSDATE());
INSERT INTO public.test (time_stamp) VALUES (SYSDATE());
COMMIT;

変換前のデータは次のようになります。

         タイムスタンプ
----------------------------
 2014-07-01 21:37:11.454081
 2014-07-01 21:37:15.521172
 2014-07-01 21:37:18.048398

関数を使用しTRUNCて値を切り捨てます。

SELECT TRUNC(time_stamp, 'dd') FROM public.test;

これにより、次が生成されます。

        TRUNC
----------------------
 2014-07-01 00:00:00
 2014-07-01 00:00:00
 2014-07-01 00:00:00

あなたがそれを書きたい場合:

SELECT CAST(CAST(time_stamp AS date) AS timestamp) FROM public.test;

または

SELECT time_stamp::date::timestamp FROM public.test;
于 2014-07-02T02:19:44.363 に答える