Search

5-3-2. 주의가 필요한 날짜 컬럼

-- [SQL-5-3-2-a] EXPLAIN (ANALYZE,BUFFERS,COSTS OFF) SELECT t1.* FROM startdbpg.tr_ord_big t1 WHERE t1.ord_dtm >= '2023-04-01'::date AND t1.ord_dtm < '2023-04-02'::date;
SQL
복사
-- [SQL-5-3-2-b] EXPLAIN (ANALYZE,BUFFERS,COSTS OFF) SELECT t1.* FROM startdbpg.tr_ord_big t1 WHERE TO_CHAR(t1.ord_dtm,'YYYY-MM-DD') = '2023-04-01';
SQL
복사
-- [SQL-5-3-2-c] CREATE INDEX tr_ord_big_x05 ON startdbpg.tr_ord_big(ord_ymd);
SQL
복사
-- [SQL-5-3-2-d] EXPLAIN (ANALYZE,BUFFERS,COSTS OFF) SELECT t1.* FROM startdbpg.tr_ord_big t1 WHERE t1.ord_ymd = 20230401;
SQL
복사
-- [SQL-5-3-2-e] EXPLAIN (ANALYZE,BUFFERS,COSTS OFF) SELECT t1.* FROM startdbpg.tr_ord_big t1 WHERE t1.ord_ymd::numeric = 20230401;
SQL
복사
-- [SQL-5-3-2-f] EXPLAIN (ANALYZE,BUFFERS,COSTS OFF) SELECT t1.* FROM startdbpg.tr_ord_big t1 WHERE t1.ord_ymd = 20230401::text; -- 또는 t1.ord_ymd = '20230401'
SQL
복사
-- [SQL-5-3-2-1-a] EXPLAIN (COSTS OFF) SELECT t1.* FROM startdbpg.tr_ord_big t1 WHERE t1.ord_dtm = '2023-04-01';
SQL
복사