85
91
select makedate(100,1);
94
select addtime("1997-12-31 23:59:59.999999", "1 1:1:1.000002");
95
addtime("1997-12-31 23:59:59.999999", "1 1:1:1.000002")
96
1998-01-02 01:01:01.000001
97
select subtime("1997-12-31 23:59:59.000001", "1 1:1:1.000002");
98
subtime("1997-12-31 23:59:59.000001", "1 1:1:1.000002")
99
1997-12-30 22:58:57.999999
100
select addtime("1997-12-31 23:59:59.999999", "1998-01-01 01:01:01.999999");
101
addtime("1997-12-31 23:59:59.999999", "1998-01-01 01:01:01.999999")
103
select subtime("1997-12-31 23:59:59.999999", "1998-01-01 01:01:01.999999");
104
subtime("1997-12-31 23:59:59.999999", "1998-01-01 01:01:01.999999")
106
select subtime("01:00:00.999999", "02:00:00.999998");
107
subtime("01:00:00.999999", "02:00:00.999998")
109
select subtime("02:01:01.999999", "01:01:01.999999");
110
subtime("02:01:01.999999", "01:01:01.999999")
112
select timediff("1997-01-01 23:59:59.000001","1995-12-31 23:59:59.000002");
113
timediff("1997-01-01 23:59:59.000001","1995-12-31 23:59:59.000002")
116
Warning 1292 Truncated incorrect time value: '8807:59:59.999999'
117
select timediff("1997-12-31 23:59:59.000001","1997-12-30 01:01:01.000002");
118
timediff("1997-12-31 23:59:59.000001","1997-12-30 01:01:01.000002")
120
select timediff("1997-12-30 23:59:59.000001","1997-12-31 23:59:59.000002");
121
timediff("1997-12-30 23:59:59.000001","1997-12-31 23:59:59.000002")
123
select timediff("1997-12-31 23:59:59.000001","23:59:59.000001");
124
timediff("1997-12-31 23:59:59.000001","23:59:59.000001")
126
select timediff("2000:01:01 00:00:00", "2000:01:01 00:00:00.000001");
127
timediff("2000:01:01 00:00:00", "2000:01:01 00:00:00.000001")
129
select timediff("2005-01-11 15:48:49.999999", "2005-01-11 15:48:50");
130
timediff("2005-01-11 15:48:49.999999", "2005-01-11 15:48:50")
132
select maketime(10,11,12);
135
select maketime(25,11,12);
138
select maketime(-25,11,12);
141
select timestamp("2001-12-01", "01:01:01.999999");
142
timestamp("2001-12-01", "01:01:01.999999")
143
2001-12-01 01:01:01.999999
144
select timestamp("2001-13-01", "01:01:01.000001");
145
timestamp("2001-13-01", "01:01:01.000001")
148
Warning 1292 Incorrect datetime value: '2001-13-01'
149
select timestamp("2001-12-01", "25:01:01");
150
timestamp("2001-12-01", "25:01:01")
88
152
select timestamp("2001-12-01 01:01:01.000100");
89
153
timestamp("2001-12-01 01:01:01.000100")
90
154
2001-12-01 01:01:01.000100
104
168
Warning 1292 Incorrect datetime value: '1997-13-31 23:59:59.000001'
169
select time("1997-12-31 23:59:59.000001");
170
time("1997-12-31 23:59:59.000001")
172
select time("1997-12-31 25:59:59.000001");
173
time("1997-12-31 25:59:59.000001")
176
Warning 1292 Truncated incorrect time value: '1997-12-31 25:59:59.000001'
105
177
select microsecond("1997-12-31 23:59:59.000001");
106
178
microsecond("1997-12-31 23:59:59.000001")
109
181
select makedate(1997,1) as f1,
110
date("1997-12-31 23:59:59.000001") as f8;
182
addtime(cast("1997-12-31 23:59:59.000001" as datetime), "1 1:1:1.000002") as f2,
183
addtime(cast("23:59:59.999999" as time) , "1 1:1:1.000002") as f3,
184
timediff("1997-12-31 23:59:59.000001","1997-12-30 01:01:01.000002") as f4,
185
timediff("1997-12-30 23:59:59.000001","1997-12-31 23:59:59.000002") as f5,
186
maketime(10,11,12) as f6,
187
timestamp(cast("2001-12-01" as date), "01:01:01") as f7,
188
date("1997-12-31 23:59:59.000001") as f8,
189
time("1997-12-31 23:59:59.000001") as f9;
112
Field Type Null Default Default_is_NULL On_Update
191
Field Type Null Key Default Extra
115
201
select * from t1;
117
1997-01-01 1997-12-31
118
create table test(t1 datetime, t4 datetime);
202
f1 f2 f3 f4 f5 f6 f7 f8 f9
203
1997-01-01 1998-01-02 01:01:00 49:01:01 46:58:57 -24:00:00 10:11:12 2001-12-01 01:01:01 1997-12-31 23:59:59
204
create table test(t1 datetime, t2 time, t3 time, t4 datetime);
119
205
insert into test values
120
('2001-01-01 01:01:01', '2001-02-01 01:01:01'),
121
('2001-01-01 01:01:01', "1997-12-31 23:59:59.000001"),
122
('1997-12-31 23:59:59.000001', '2001-01-01 01:01:01'),
123
('2001-01-01 01:01:01', null),
124
('2001-01-01 01:01:01', '2001-01-01 01:01:01'),
125
('2001-01-01 01:01:01', null),
127
('2001-01-01 01:01:01', '2001-01-01 01:01:01');
206
('2001-01-01 01:01:01', '01:01:01', null, '2001-02-01 01:01:01'),
207
('2001-01-01 01:01:01', '-01:01:01', '-23:59:59', "1997-12-31 23:59:59.000001"),
208
('1997-12-31 23:59:59.000001', '-23:59:59', '-01:01:01', '2001-01-01 01:01:01'),
209
('2001-01-01 01:01:01', '01:01:01', '-1 01:01:01', null),
210
('2001-01-01 01:01:01', '-01:01:01', '1 01:01:01', '2001-01-01 01:01:01'),
211
('2001-01-01 01:01:01', null, '-1 01:01:01', null),
212
(null, null, null, null),
213
('2001-01-01 01:01:01', '01:01:01', '1 01:01:01', '2001-01-01 01:01:01');
214
SELECT ADDTIME(t1,t2) As ttt, ADDTIME(t2, t3) As qqq from test;
216
2001-01-01 02:02:02 NULL
217
2001-01-01 00:00:00 -25:01:00
218
1997-12-31 00:00:00 -25:01:00
219
2001-01-01 02:02:02 -24:00:00
220
2001-01-01 00:00:00 24:00:00
223
2001-01-01 02:02:02 26:02:02
224
SELECT TIMEDIFF(t1, t4) As ttt, TIMEDIFF(t2, t3) As qqq,
225
TIMEDIFF(t3, t2) As eee, TIMEDIFF(t2, t4) As rrr from test;
227
-744:00:00 NULL NULL NULL
228
838:59:59 22:58:58 -22:58:58 NULL
229
-838:59:59 -22:58:58 22:58:58 NULL
230
NULL 26:02:02 -26:02:02 NULL
231
00:00:00 -26:02:02 26:02:02 NULL
234
00:00:00 -24:00:00 24:00:00 NULL
236
Warning 1292 Truncated incorrect time value: '26305:01:02'
237
Warning 1292 Truncated incorrect time value: '-26305:01:02'
128
238
drop table t1, test;
239
select addtime("-01:01:01.01", "-23:59:59.1") as a;
129
242
select microsecond("1997-12-31 23:59:59.01") as a;