You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
69 lines
2.9 KiB
69 lines
2.9 KiB
5 months ago
|
DROP TABLE IF EXISTS t1;
|
||
|
show variables like "system_time_zone";
|
||
|
Variable_name Value
|
||
|
system_time_zone MET
|
||
|
select @a:=FROM_UNIXTIME(1);
|
||
|
@a:=FROM_UNIXTIME(1)
|
||
|
1970-01-01 01:00:01
|
||
|
Warnings:
|
||
|
Warning 1287 Setting user variables within expressions is deprecated and will be removed in a future release. Consider alternatives: 'SET variable=expression, ...', or 'SELECT expression(s) INTO variables(s)'.
|
||
|
select unix_timestamp(@a);
|
||
|
unix_timestamp(@a)
|
||
|
1
|
||
|
CREATE TABLE t1 (ts int);
|
||
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2002-10-27 01:00'));
|
||
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2002-10-27 02:00'));
|
||
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2002-10-27 03:00'));
|
||
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2002-10-27 02:00'));
|
||
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2002-10-27 01:00'));
|
||
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2002-10-27 02:00'));
|
||
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2003-03-30 02:59:59'));
|
||
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2003-03-30 03:00:00'));
|
||
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2003-03-30 03:59:59'));
|
||
|
INSERT INTO t1 (ts) VALUES (Unix_timestamp('2003-03-30 04:00:01'));
|
||
|
SELECT ts,from_unixtime(ts) FROM t1;
|
||
|
ts from_unixtime(ts)
|
||
|
1035673200 2002-10-27 01:00:00
|
||
|
1035680400 2002-10-27 02:00:00
|
||
|
1035684000 2002-10-27 03:00:00
|
||
|
1035680400 2002-10-27 02:00:00
|
||
|
1035673200 2002-10-27 01:00:00
|
||
|
1035680400 2002-10-27 02:00:00
|
||
|
1048986000 2003-03-30 03:00:00
|
||
|
1048986000 2003-03-30 03:00:00
|
||
|
1048989599 2003-03-30 03:59:59
|
||
|
1048989601 2003-03-30 04:00:01
|
||
|
DROP TABLE t1;
|
||
|
CREATE TABLE t1 (ts timestamp);
|
||
|
INSERT IGNORE INTO t1 (ts) VALUES ('2003-03-30 01:59:59'),
|
||
|
('2003-03-30 02:59:59'),
|
||
|
('2003-03-30 03:00:00');
|
||
|
Warnings:
|
||
|
Warning 1299 Invalid TIMESTAMP value in column 'ts' at row 2
|
||
|
DROP TABLE t1;
|
||
|
select unix_timestamp('1970-01-01 01:00:00'),
|
||
|
unix_timestamp('1970-01-01 01:00:01'),
|
||
|
unix_timestamp('2038-01-19 04:14:07'),
|
||
|
unix_timestamp('2038-01-19 04:14:08');
|
||
|
unix_timestamp('1970-01-01 01:00:00') unix_timestamp('1970-01-01 01:00:01') unix_timestamp('2038-01-19 04:14:07') unix_timestamp('2038-01-19 04:14:08')
|
||
|
0 1 2147483647 0
|
||
|
CREATE TABLE t1 (c1 TIMESTAMP);
|
||
|
SET TIME_ZONE = '+00:00';
|
||
|
SET explicit_defaults_for_timestamp=OFF;
|
||
|
Warnings:
|
||
|
Warning 1287 'explicit_defaults_for_timestamp' is deprecated and will be removed in a future release.
|
||
|
INSERT INTO t1 VALUES('2019-10-27 00:47:42'), ('2019-10-27 00:47:42');
|
||
|
INSERT INTO t1 VALUES('2019-10-27 01:47:42'), ('2019-10-27 01:47:42');
|
||
|
SET TIME_ZONE = 'SYSTEM';
|
||
|
SELECT DISTINCT c1 FROM t1;
|
||
|
c1
|
||
|
2019-10-27 02:47:42
|
||
|
SELECT COUNT(*) FROM t1 GROUP BY c1;
|
||
|
ERROR HY000: Grouping on temporal is non-deterministic for timezones having DST. Please consider switching to UTC for this query.
|
||
|
SET sql_mode='';
|
||
|
SELECT COUNT(*) FROM t1 GROUP BY c1;
|
||
|
ERROR HY000: Grouping on temporal is non-deterministic for timezones having DST. Please consider switching to UTC for this query.
|
||
|
SET sql_mode=DEFAULT;
|
||
|
SET explicit_defaults_for_timestamp=ON;
|
||
|
DROP TABLE t1;
|