Files
greptimedb/tests/cases/standalone/common/insert/insert_default_timezone.result
T
Morax c3cd186997 fix(query): respect query timezone in timestamp casts (#8859)
* fix(query): respect timezone in insert values

Signed-off-by: Morax <james20081204@gmail.com>

* fix(query): normalize timestamp casts with query timezone

Signed-off-by: Morax <james20081204@gmail.com>

* fix(query): scope timestamp conversion to insert assignments

Signed-off-by: Morax <james20081204@gmail.com>

* style(query): simplify Arc usage

Signed-off-by: Morax <james20081204@gmail.com>

---------

Signed-off-by: Morax <james20081204@gmail.com>
2026-08-14 07:04:51 +00:00

106 lines
2.5 KiB
Plaintext

--- insert timestamp with default values aware of session timezone test ---
CREATE TABLE test1 (i INTEGER, j TIMESTAMP default '2024-01-30 00:01:01' TIME INDEX, PRIMARY KEY(i));
Affected Rows: 0
INSERT INTO test1 VALUES (1, DEFAULT), (2, DEFAULT), (3, '2024-01-31 00:01:01'), (4, '2025-02-01 00:01:01');
Affected Rows: 4
SELECT * FROM test1 ORDER BY j;
+---+---------------------+
| i | j |
+---+---------------------+
| 1 | 2024-01-30T00:01:01 |
| 2 | 2024-01-30T00:01:01 |
| 3 | 2024-01-31T00:01:01 |
| 4 | 2025-02-01T00:01:01 |
+---+---------------------+
SET time_zone = 'Asia/Shanghai';
Affected Rows: 0
CREATE TABLE test2 (i INTEGER, j TIMESTAMP default '2024-01-30 00:01:01' TIME INDEX, PRIMARY KEY(i));
Affected Rows: 0
INSERT INTO test2 VALUES (1, DEFAULT), (2, DEFAULT), (3, '2024-01-31 00:01:01'), (4, '2025-02-01 00:01:01');
Affected Rows: 4
SELECT * FROM test2 ORDER BY j;
+---+---------------------+
| i | j |
+---+---------------------+
| 1 | 2024-01-29T16:01:01 |
| 2 | 2024-01-29T16:01:01 |
| 3 | 2024-01-30T16:01:01 |
| 4 | 2025-01-31T16:01:01 |
+---+---------------------+
SELECT * FROM test1 ORDER BY j;
+---+---------------------+
| i | j |
+---+---------------------+
| 1 | 2024-01-30T00:01:01 |
| 2 | 2024-01-30T00:01:01 |
| 3 | 2024-01-31T00:01:01 |
| 4 | 2025-02-01T00:01:01 |
+---+---------------------+
CREATE TABLE test3 (ts TIMESTAMP TIME INDEX, st TIMESTAMP, ts_ns TIMESTAMP(9));
Affected Rows: 0
INSERT INTO test3 (ts) VALUES ('2026-08-01 12:00:00.001');
Affected Rows: 1
INSERT INTO test3 (ts, st) VALUES ('2026-08-02 12:00:00.001', now());
Affected Rows: 1
INSERT INTO test3 (ts, st) SELECT '2026-08-03 12:00:00.001', now();
Affected Rows: 1
INSERT INTO test3 (ts, st, ts_ns) VALUES (
'2026-08-04 12:00:00.001',
now(),
'2026-08-04 12:00:00.123456789'
);
Affected Rows: 1
SELECT ts, ts_ns FROM test3 ORDER BY ts;
+-------------------------+-------------------------------+
| ts | ts_ns |
+-------------------------+-------------------------------+
| 2026-08-01T04:00:00.001 | |
| 2026-08-02T04:00:00.001 | |
| 2026-08-03T04:00:00.001 | |
| 2026-08-04T04:00:00.001 | 2026-08-04T04:00:00.123456789 |
+-------------------------+-------------------------------+
SET time_zone = 'UTC';
Affected Rows: 0
DROP TABLE test1;
Affected Rows: 0
DROP TABLE test2;
Affected Rows: 0
DROP TABLE test3;
Affected Rows: 0