~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to tests/r/func_time.result

  • Committer: Brian Aker
  • Date: 2009-11-18 06:24:48 UTC
  • mfrom: (1220.1.15 staging)
  • Revision ID: brian@gaz-20091118062448-o36lo3yv81sc6u9z
Merge Brian + Stewart

Show diffs side-by-side

added added

removed removed

Lines of Context:
63
63
NULL
64
64
select date_add("1997-12-31 23:59:59",INTERVAL 1 SECOND);
65
65
date_add("1997-12-31 23:59:59",INTERVAL 1 SECOND)
66
 
1998-01-01 00:00:00.000000
 
66
1998-01-01 00:00:00
67
67
select date_add("1997-12-31 23:59:59",INTERVAL 1 MINUTE);
68
68
date_add("1997-12-31 23:59:59",INTERVAL 1 MINUTE)
69
 
1998-01-01 00:00:59.000000
 
69
1998-01-01 00:00:59
70
70
select date_add("1997-12-31 23:59:59",INTERVAL 1 HOUR);
71
71
date_add("1997-12-31 23:59:59",INTERVAL 1 HOUR)
72
 
1998-01-01 00:59:59.000000
 
72
1998-01-01 00:59:59
73
73
select date_add("1997-12-31 23:59:59",INTERVAL 1 DAY);
74
74
date_add("1997-12-31 23:59:59",INTERVAL 1 DAY)
75
 
1998-01-01 23:59:59.000000
 
75
1998-01-01 23:59:59
76
76
select date_add("1997-12-31 23:59:59",INTERVAL 1 MONTH);
77
77
date_add("1997-12-31 23:59:59",INTERVAL 1 MONTH)
78
 
1998-01-31 23:59:59.000000
 
78
1998-01-31 23:59:59
79
79
select date_add("1997-12-31 23:59:59",INTERVAL 1 YEAR);
80
80
date_add("1997-12-31 23:59:59",INTERVAL 1 YEAR)
81
 
1998-12-31 23:59:59.000000
 
81
1998-12-31 23:59:59
82
82
select date_add("1997-12-31 23:59:59",INTERVAL "1:1" MINUTE_SECOND);
83
83
date_add("1997-12-31 23:59:59",INTERVAL "1:1" MINUTE_SECOND)
84
 
1998-01-01 00:01:00.000000
 
84
1998-01-01 00:01:00
85
85
select date_add("1997-12-31 23:59:59",INTERVAL "1:1" HOUR_MINUTE);
86
86
date_add("1997-12-31 23:59:59",INTERVAL "1:1" HOUR_MINUTE)
87
 
1998-01-01 01:00:59.000000
 
87
1998-01-01 01:00:59
88
88
select date_add("1997-12-31 23:59:59",INTERVAL "1:1" DAY_HOUR);
89
89
date_add("1997-12-31 23:59:59",INTERVAL "1:1" DAY_HOUR)
90
 
1998-01-02 00:59:59.000000
 
90
1998-01-02 00:59:59
91
91
select date_add("1997-12-31 23:59:59",INTERVAL "1 1" YEAR_MONTH);
92
92
date_add("1997-12-31 23:59:59",INTERVAL "1 1" YEAR_MONTH)
93
 
1999-01-31 23:59:59.000000
 
93
1999-01-31 23:59:59
94
94
select date_add("1997-12-31 23:59:59",INTERVAL "1:1:1" HOUR_SECOND);
95
95
date_add("1997-12-31 23:59:59",INTERVAL "1:1:1" HOUR_SECOND)
96
 
1998-01-01 01:01:00.000000
 
96
1998-01-01 01:01:00
97
97
select date_add("1997-12-31 23:59:59",INTERVAL "1 1:1" DAY_MINUTE);
98
98
date_add("1997-12-31 23:59:59",INTERVAL "1 1:1" DAY_MINUTE)
99
 
1998-01-02 01:00:59.000000
 
99
1998-01-02 01:00:59
100
100
select date_add("1997-12-31 23:59:59",INTERVAL "1 1:1:1" DAY_SECOND);
101
101
date_add("1997-12-31 23:59:59",INTERVAL "1 1:1:1" DAY_SECOND)
102
 
1998-01-02 01:01:00.000000
 
102
1998-01-02 01:01:00
103
103
select date_sub("1998-01-01 00:00:00",INTERVAL 1 SECOND);
104
104
date_sub("1998-01-01 00:00:00",INTERVAL 1 SECOND)
105
 
1997-12-31 23:59:59.000000
 
105
1997-12-31 23:59:59
106
106
select date_sub("1998-01-01 00:00:00",INTERVAL 1 MINUTE);
107
107
date_sub("1998-01-01 00:00:00",INTERVAL 1 MINUTE)
108
 
1997-12-31 23:59:00.000000
 
108
1997-12-31 23:59:00
109
109
select date_sub("1998-01-01 00:00:00",INTERVAL 1 HOUR);
110
110
date_sub("1998-01-01 00:00:00",INTERVAL 1 HOUR)
111
 
1997-12-31 23:00:00.000000
 
111
1997-12-31 23:00:00
112
112
select date_sub("1998-01-01 00:00:00",INTERVAL 1 DAY);
113
113
date_sub("1998-01-01 00:00:00",INTERVAL 1 DAY)
114
 
1997-12-31 00:00:00.000000
 
114
1997-12-31 00:00:00
115
115
select date_sub("1998-01-01 00:00:00",INTERVAL 1 MONTH);
116
116
date_sub("1998-01-01 00:00:00",INTERVAL 1 MONTH)
117
 
1997-12-01 00:00:00.000000
 
117
1997-12-01 00:00:00
118
118
select date_sub("1998-01-01 00:00:00",INTERVAL 1 YEAR);
119
119
date_sub("1998-01-01 00:00:00",INTERVAL 1 YEAR)
120
 
1997-01-01 00:00:00.000000
 
120
1997-01-01 00:00:00
121
121
select date_sub("1998-01-01 00:00:00",INTERVAL "1:1" MINUTE_SECOND);
122
122
date_sub("1998-01-01 00:00:00",INTERVAL "1:1" MINUTE_SECOND)
123
 
1997-12-31 23:58:59.000000
 
123
1997-12-31 23:58:59
124
124
select date_sub("1998-01-01 00:00:00",INTERVAL "1:1" HOUR_MINUTE);
125
125
date_sub("1998-01-01 00:00:00",INTERVAL "1:1" HOUR_MINUTE)
126
 
1997-12-31 22:59:00.000000
 
126
1997-12-31 22:59:00
127
127
select date_sub("1998-01-01 00:00:00",INTERVAL "1:1" DAY_HOUR);
128
128
date_sub("1998-01-01 00:00:00",INTERVAL "1:1" DAY_HOUR)
129
 
1997-12-30 23:00:00.000000
 
129
1997-12-30 23:00:00
130
130
select date_sub("1998-01-01 00:00:00",INTERVAL "1 1" YEAR_MONTH);
131
131
date_sub("1998-01-01 00:00:00",INTERVAL "1 1" YEAR_MONTH)
132
 
1996-12-01 00:00:00.000000
 
132
1996-12-01 00:00:00
133
133
select date_sub("1998-01-01 00:00:00",INTERVAL "1:1:1" HOUR_SECOND);
134
134
date_sub("1998-01-01 00:00:00",INTERVAL "1:1:1" HOUR_SECOND)
135
 
1997-12-31 22:58:59.000000
 
135
1997-12-31 22:58:59
136
136
select date_sub("1998-01-01 00:00:00",INTERVAL "1 1:1" DAY_MINUTE);
137
137
date_sub("1998-01-01 00:00:00",INTERVAL "1 1:1" DAY_MINUTE)
138
 
1997-12-30 22:59:00.000000
 
138
1997-12-30 22:59:00
139
139
select date_sub("1998-01-01 00:00:00",INTERVAL "1 1:1:1" DAY_SECOND);
140
140
date_sub("1998-01-01 00:00:00",INTERVAL "1 1:1:1" DAY_SECOND)
141
 
1997-12-30 22:58:59.000000
 
141
1997-12-30 22:58:59
142
142
select date_add("1997-12-31 23:59:59",INTERVAL 100000 SECOND);
143
143
date_add("1997-12-31 23:59:59",INTERVAL 100000 SECOND)
144
 
1998-01-02 03:46:39.000000
 
144
1998-01-02 03:46:39
145
145
select date_add("1997-12-31 23:59:59",INTERVAL -100000 MINUTE);
146
146
date_add("1997-12-31 23:59:59",INTERVAL -100000 MINUTE)
147
 
1997-10-23 13:19:59.000000
 
147
1997-10-23 13:19:59
148
148
select date_add("1997-12-31 23:59:59",INTERVAL 100000 HOUR);
149
149
date_add("1997-12-31 23:59:59",INTERVAL 100000 HOUR)
150
 
2009-05-29 15:59:59.000000
 
150
2009-05-29 15:59:59
151
151
select date_add("1997-12-31 23:59:59",INTERVAL -100000 DAY);
152
152
date_add("1997-12-31 23:59:59",INTERVAL -100000 DAY)
153
 
1724-03-17 23:59:59.000000
 
153
1724-03-17 23:59:59
154
154
select date_add("1997-12-31 23:59:59",INTERVAL 100000 MONTH);
155
155
date_add("1997-12-31 23:59:59",INTERVAL 100000 MONTH)
156
156
NULL
163
163
Warning 1441    Datetime function: datetime field overflow
164
164
select date_add("1997-12-31 23:59:59",INTERVAL "10000:1" MINUTE_SECOND);
165
165
date_add("1997-12-31 23:59:59",INTERVAL "10000:1" MINUTE_SECOND)
166
 
1998-01-07 22:40:00.000000
 
166
1998-01-07 22:40:00
167
167
select date_add("1997-12-31 23:59:59",INTERVAL "-10000:1" HOUR_MINUTE);
168
168
date_add("1997-12-31 23:59:59",INTERVAL "-10000:1" HOUR_MINUTE)
169
 
1996-11-10 07:58:59.000000
 
169
1996-11-10 07:58:59
170
170
select date_add("1997-12-31 23:59:59",INTERVAL "10000:1" DAY_HOUR);
171
171
date_add("1997-12-31 23:59:59",INTERVAL "10000:1" DAY_HOUR)
172
 
2025-05-19 00:59:59.000000
 
172
2025-05-19 00:59:59
173
173
select date_add("1997-12-31 23:59:59",INTERVAL "-100 1" YEAR_MONTH);
174
174
date_add("1997-12-31 23:59:59",INTERVAL "-100 1" YEAR_MONTH)
175
 
1897-11-30 23:59:59.000000
 
175
1897-11-30 23:59:59
176
176
select date_add("1997-12-31 23:59:59",INTERVAL "10000:99:99" HOUR_SECOND);
177
177
date_add("1997-12-31 23:59:59",INTERVAL "10000:99:99" HOUR_SECOND)
178
 
1999-02-21 17:40:38.000000
 
178
1999-02-21 17:40:38
179
179
select date_add("1997-12-31 23:59:59",INTERVAL " -10000 99:99" DAY_MINUTE);
180
180
date_add("1997-12-31 23:59:59",INTERVAL " -10000 99:99" DAY_MINUTE)
181
 
1970-08-11 19:20:59.000000
 
181
1970-08-11 19:20:59
182
182
select date_add("1997-12-31 23:59:59",INTERVAL "10000 99:99:99" DAY_SECOND);
183
183
date_add("1997-12-31 23:59:59",INTERVAL "10000 99:99:99" DAY_SECOND)
184
 
2025-05-23 04:40:38.000000
 
184
2025-05-23 04:40:38
185
185
select "1997-12-31 23:59:59" + INTERVAL 1 SECOND;
186
186
"1997-12-31 23:59:59" + INTERVAL 1 SECOND
187
 
1998-01-01 00:00:00.000000
 
187
1998-01-01 00:00:00
188
188
select INTERVAL 1 DAY + "1997-12-31";
189
189
INTERVAL 1 DAY + "1997-12-31"
190
190
1998-01-01
191
191
select "1998-01-01 00:00:00" - INTERVAL 1 SECOND;
192
192
"1998-01-01 00:00:00" - INTERVAL 1 SECOND
193
 
1997-12-31 23:59:59.000000
 
193
1997-12-31 23:59:59
194
194
select date_sub("1998-01-02",INTERVAL 31 DAY);
195
195
date_sub("1998-01-02",INTERVAL 31 DAY)
196
196
1997-12-02
197
197
select date_add("1997-12-31",INTERVAL 1 SECOND);
198
198
date_add("1997-12-31",INTERVAL 1 SECOND)
199
 
1997-12-31 00:00:01.000000
 
199
1997-12-31 00:00:01
200
200
select date_add("1997-12-31",INTERVAL 1 DAY);
201
201
date_add("1997-12-31",INTERVAL 1 DAY)
202
202
1998-01-01
302
302
4
303
303
SELECT "1900-01-01 00:00:00" + INTERVAL 2147483648 SECOND;
304
304
"1900-01-01 00:00:00" + INTERVAL 2147483648 SECOND
305
 
1968-01-20 03:14:08.000000
 
305
1968-01-20 03:14:08
306
306
SELECT "1900-01-01 00:00:00" + INTERVAL "1:2147483647" MINUTE_SECOND;
307
307
"1900-01-01 00:00:00" + INTERVAL "1:2147483647" MINUTE_SECOND
308
 
1968-01-20 03:15:07.000000
 
308
1968-01-20 03:15:07
309
309
SELECT "1900-01-01 00:00:00" + INTERVAL "100000000:214748364700" MINUTE_SECOND;
310
310
"1900-01-01 00:00:00" + INTERVAL "100000000:214748364700" MINUTE_SECOND
311
 
8895-03-27 22:11:40.000000
 
311
8895-03-27 22:11:40
312
312
SELECT "1900-01-01 00:00:00" + INTERVAL "1000000000:214748364700" MINUTE_SECOND;
313
313
"1900-01-01 00:00:00" + INTERVAL "1000000000:214748364700" MINUTE_SECOND
314
314
NULL
348
348
create table t1 (d date, dt datetime, t timestamp, c char(10));
349
349
insert into t1 values (null, null, null, null);
350
350
insert into t1 values ("0000-00-00", "0000-00-00", "0000-00-00", "0000-00-00");
351
 
ERROR HY000: Received an invalid DATE value '0000-00-00'.
 
351
ERROR HY000: Received an invalid datetime value '0000-00-00'.
352
352
select dayofyear("0000-00-00"),dayofyear(d),dayofyear(dt),dayofyear(t),dayofyear(c) from t1;
353
353
ERROR HY000: Received an invalid datetime value '0000-00-00'.
354
354
select dayofmonth("0000-00-00"),dayofmonth(d),dayofmonth(dt),dayofmonth(t),dayofmonth(c) from t1;
382
382
drop table t1,t2,t3;
383
383
select @a:=FROM_UNIXTIME(1);
384
384
@a:=FROM_UNIXTIME(1)
385
 
1970-01-01 00:00:01.000000
 
385
1970-01-01 00:00:01
386
386
select unix_timestamp(@a);
387
387
unix_timestamp(@a)
388
388
1
425
425
select unix_timestamp('2038-01-19 03:14:07');
426
426
unix_timestamp('2038-01-19 03:14:07')
427
427
2147483647
428
 
CREATE TABLE t1 (datetime_arg datetime, timestamp_arg timestamp, date_arg date);
 
428
CREATE TABLE t1 (datetime datetime, timestamp timestamp, date date);
429
429
INSERT INTO t1 values ("2001-01-02 03:04:05", "2002-01-02 03:04:05", "2003-01-02");
430
430
SELECT * from t1;
431
 
datetime_arg    timestamp_arg   date_arg
 
431
datetime        timestamp       date
432
432
2001-01-02 03:04:05     2002-01-02 03:04:05     2003-01-02
433
433
select date_add("1997-12-31",INTERVAL 1 SECOND);
434
434
date_add("1997-12-31",INTERVAL 1 SECOND)
435
 
1997-12-31 00:00:01.000000
 
435
1997-12-31 00:00:01
436
436
select date_add("1997-12-31",INTERVAL "1 1" YEAR_MONTH);
437
437
date_add("1997-12-31",INTERVAL "1 1" YEAR_MONTH)
438
438
1999-01-31
439
 
select date_add(datetime_arg, INTERVAL 1 SECOND) from t1;
440
 
date_add(datetime_arg, INTERVAL 1 SECOND)
 
439
select date_add(datetime, INTERVAL 1 SECOND) from t1;
 
440
date_add(datetime, INTERVAL 1 SECOND)
441
441
2001-01-02 03:04:06
442
 
select date_add(datetime_arg, INTERVAL 1 YEAR) from t1;
443
 
date_add(datetime_arg, INTERVAL 1 YEAR)
 
442
select date_add(datetime, INTERVAL 1 YEAR) from t1;
 
443
date_add(datetime, INTERVAL 1 YEAR)
444
444
2002-01-02 03:04:05
445
 
select date_add(date_arg, INTERVAL 1 SECOND) from t1;
446
 
date_add(date_arg, INTERVAL 1 SECOND)
 
445
select date_add(date,INTERVAL 1 SECOND) from t1;
 
446
date_add(date,INTERVAL 1 SECOND)
447
447
2003-01-02 00:00:01
448
 
select date_add(date_arg, INTERVAL 1 MINUTE) from t1;
449
 
date_add(date_arg, INTERVAL 1 MINUTE)
 
448
select date_add(date,INTERVAL 1 MINUTE) from t1;
 
449
date_add(date,INTERVAL 1 MINUTE)
450
450
2003-01-02 00:01:00
451
 
select date_add(date_arg, INTERVAL 1 HOUR) from t1;
452
 
date_add(date_arg, INTERVAL 1 HOUR)
 
451
select date_add(date,INTERVAL 1 HOUR) from t1;
 
452
date_add(date,INTERVAL 1 HOUR)
453
453
2003-01-02 01:00:00
454
 
select date_add(date_arg, INTERVAL 1 DAY) from t1;
455
 
date_add(date_arg, INTERVAL 1 DAY)
 
454
select date_add(date,INTERVAL 1 DAY) from t1;
 
455
date_add(date,INTERVAL 1 DAY)
456
456
2003-01-03
457
 
select date_add(date_arg, INTERVAL 1 MONTH) from t1;
458
 
date_add(date_arg, INTERVAL 1 MONTH)
 
457
select date_add(date,INTERVAL 1 MONTH) from t1;
 
458
date_add(date,INTERVAL 1 MONTH)
459
459
2003-02-02
460
 
select date_add(date_arg, INTERVAL 1 YEAR) from t1;
461
 
date_add(date_arg, INTERVAL 1 YEAR)
 
460
select date_add(date,INTERVAL 1 YEAR) from t1;
 
461
date_add(date,INTERVAL 1 YEAR)
462
462
2004-01-02
463
 
select date_add(date_arg, INTERVAL "1:1" MINUTE_SECOND) from t1;
464
 
date_add(date_arg, INTERVAL "1:1" MINUTE_SECOND)
 
463
select date_add(date,INTERVAL "1:1" MINUTE_SECOND) from t1;
 
464
date_add(date,INTERVAL "1:1" MINUTE_SECOND)
465
465
2003-01-02 00:01:01
466
 
select date_add(date_arg, INTERVAL "1:1" HOUR_MINUTE) from t1;
467
 
date_add(date_arg, INTERVAL "1:1" HOUR_MINUTE)
 
466
select date_add(date,INTERVAL "1:1" HOUR_MINUTE) from t1;
 
467
date_add(date,INTERVAL "1:1" HOUR_MINUTE)
468
468
2003-01-02 01:01:00
469
 
select date_add(date_arg, INTERVAL "1:1" DAY_HOUR) from t1;
470
 
date_add(date_arg, INTERVAL "1:1" DAY_HOUR)
 
469
select date_add(date,INTERVAL "1:1" DAY_HOUR) from t1;
 
470
date_add(date,INTERVAL "1:1" DAY_HOUR)
471
471
2003-01-03 01:00:00
472
 
select date_add(date_arg, INTERVAL "1 1" YEAR_MONTH) from t1;
473
 
date_add(date_arg, INTERVAL "1 1" YEAR_MONTH)
 
472
select date_add(date,INTERVAL "1 1" YEAR_MONTH) from t1;
 
473
date_add(date,INTERVAL "1 1" YEAR_MONTH)
474
474
2004-02-02
475
 
select date_add(date_arg, INTERVAL "1:1:1" HOUR_SECOND) from t1;
476
 
date_add(date_arg, INTERVAL "1:1:1" HOUR_SECOND)
 
475
select date_add(date,INTERVAL "1:1:1" HOUR_SECOND) from t1;
 
476
date_add(date,INTERVAL "1:1:1" HOUR_SECOND)
477
477
2003-01-02 01:01:01
478
 
select date_add(date_arg, INTERVAL "1 1:1" DAY_MINUTE) from t1;
479
 
date_add(date_arg, INTERVAL "1 1:1" DAY_MINUTE)
 
478
select date_add(date,INTERVAL "1 1:1" DAY_MINUTE) from t1;
 
479
date_add(date,INTERVAL "1 1:1" DAY_MINUTE)
480
480
2003-01-03 01:01:00
481
 
select date_add(date_arg, INTERVAL "1 1:1:1" DAY_SECOND) from t1;
482
 
date_add(date_arg, INTERVAL "1 1:1:1" DAY_SECOND)
 
481
select date_add(date,INTERVAL "1 1:1:1" DAY_SECOND) from t1;
 
482
date_add(date,INTERVAL "1 1:1:1" DAY_SECOND)
483
483
2003-01-03 01:01:01
484
 
select date_add(date_arg, INTERVAL "1" WEEK) from t1;
485
 
date_add(date_arg, INTERVAL "1" WEEK)
 
484
select date_add(date,INTERVAL "1" WEEK) from t1;
 
485
date_add(date,INTERVAL "1" WEEK)
486
486
2003-01-09
487
 
select date_add(date_arg, INTERVAL "1" QUARTER) from t1;
488
 
date_add(date_arg, INTERVAL "1" QUARTER)
 
487
select date_add(date,INTERVAL "1" QUARTER) from t1;
 
488
date_add(date,INTERVAL "1" QUARTER)
489
489
2003-04-02
490
 
select timestampadd(MINUTE, 1, date_arg) from t1;
491
 
timestampadd(MINUTE, 1, date_arg)
 
490
select timestampadd(MINUTE, 1, date) from t1;
 
491
timestampadd(MINUTE, 1, date)
492
492
2003-01-02 00:01:00
493
 
select timestampadd(WEEK, 1, date_arg) from t1;
494
 
timestampadd(WEEK, 1, date_arg)
 
493
select timestampadd(WEEK, 1, date) from t1;
 
494
timestampadd(WEEK, 1, date)
495
495
2003-01-09
496
 
select timestampadd(SQL_TSI_SECOND, 1, date_arg) from t1;
497
 
timestampadd(SQL_TSI_SECOND, 1, date_arg)
 
496
select timestampadd(SQL_TSI_SECOND, 1, date) from t1;
 
497
timestampadd(SQL_TSI_SECOND, 1, date)
498
498
2003-01-02 00:00:01
499
 
select timestampadd(SQL_TSI_FRAC_SECOND, 1, date_arg) from t1;
500
 
timestampadd(SQL_TSI_FRAC_SECOND, 1, date_arg)
 
499
select timestampadd(SQL_TSI_FRAC_SECOND, 1, date) from t1;
 
500
timestampadd(SQL_TSI_FRAC_SECOND, 1, date)
501
501
2003-01-02 00:00:00.000001
502
502
select timestampdiff(MONTH, '2001-02-01', '2001-05-01') as a;
503
503
a
634
634
create table t1 select last_day('2000-02-05') as a,
635
635
from_days(to_days("960101")) as b;
636
636
describe t1;
637
 
Field   Type    Null    Default Default_is_NULL On_Update
638
 
a       DATE    NO              NO      
639
 
b       DATE    YES             YES     
 
637
Field   Type    Null    Key     Default Extra
 
638
a       date    NO              NULL    
 
639
b       date    YES             NULL    
640
640
select * from t1;
641
641
a       b
642
642
2000-02-29      1996-01-01
714
714
f1
715
715
Warnings:
716
716
Warning 1292    Incorrect datetime value: 'zzz'
 
717
Warning 1292    Incorrect datetime value: 'zzz'
717
718
select f1 from t1 where makedate(2006,1) between date(f1) and date(f3);
718
719
f1
719
720
2006-01-01
805
806
'2005.09.01' - INTERVAL 6 MONTH AND t2.day;
806
807
id      day     id      day
807
808
1       2005-06-01      1       2005-08-01
 
809
3       2005-07-01      1       2005-08-01
808
810
1       2005-06-01      2       2005-06-15
809
811
1       2005-06-01      3       2005-07-15
810
 
3       2005-07-01      1       2005-08-01
811
812
3       2005-07-01      3       2005-07-15
812
813
SELECT * FROM t1, t2 
813
814
WHERE CAST(t1.day AS DATE) BETWEEN 
814
815
'2005.09.01' - INTERVAL 6 MONTH AND t2.day;
815
816
id      day     id      day
816
817
1       2005-06-01      1       2005-08-01
 
818
3       2005-07-01      1       2005-08-01
817
819
1       2005-06-01      2       2005-06-15
818
820
1       2005-06-01      3       2005-07-15
819
 
3       2005-07-01      1       2005-08-01
820
821
3       2005-07-01      3       2005-07-15
821
822
DROP TABLE t1,t2;
822
823
create table t1 (field DATE);
838
839
drop table t1;
839
840
select DATE_ADD('20071108181000', INTERVAL 1 DAY);
840
841
DATE_ADD('20071108181000', INTERVAL 1 DAY)
841
 
2007-11-09 18:10:00.000000
 
842
2007-11-09 18:10:00
842
843
select DATE_ADD(20071108181000,   INTERVAL 1 DAY);
843
844
DATE_ADD(20071108181000,   INTERVAL 1 DAY)
844
 
2007-11-09 18:10:00.000000
 
845
2007-11-09 18:10:00
845
846
select DATE_ADD('20071108',       INTERVAL 1 DAY);
846
847
DATE_ADD('20071108',       INTERVAL 1 DAY)
847
848
2007-11-09
868
869
End of 5.0 tests
869
870
select date_sub("0050-01-01 00:00:01",INTERVAL 2 SECOND);
870
871
date_sub("0050-01-01 00:00:01",INTERVAL 2 SECOND)
871
 
0049-12-31 23:59:59.000000
 
872
0049-12-31 23:59:59
872
873
select date_sub("0199-01-01 00:00:01",INTERVAL 2 SECOND);
873
874
date_sub("0199-01-01 00:00:01",INTERVAL 2 SECOND)
874
 
0198-12-31 23:59:59.000000
 
875
0198-12-31 23:59:59
875
876
select date_add("0199-12-31 23:59:59",INTERVAL 2 SECOND);
876
877
date_add("0199-12-31 23:59:59",INTERVAL 2 SECOND)
877
 
0200-01-01 00:00:01.000000
 
878
0200-01-01 00:00:01
878
879
select date_sub("0200-01-01 00:00:01",INTERVAL 2 SECOND);
879
880
date_sub("0200-01-01 00:00:01",INTERVAL 2 SECOND)
880
 
0199-12-31 23:59:59.000000
 
881
0199-12-31 23:59:59
881
882
select date_sub("0200-01-01 00:00:01",INTERVAL 1 SECOND);
882
883
date_sub("0200-01-01 00:00:01",INTERVAL 1 SECOND)
883
 
0200-01-01 00:00:00.000000
 
884
0200-01-01 00:00:00
884
885
select date_sub("0200-01-01 00:00:01",INTERVAL 2 SECOND);
885
886
date_sub("0200-01-01 00:00:01",INTERVAL 2 SECOND)
886
 
0199-12-31 23:59:59.000000
 
887
0199-12-31 23:59:59
887
888
select date_add("2001-01-01 23:59:59",INTERVAL -2000 YEAR);
888
889
date_add("2001-01-01 23:59:59",INTERVAL -2000 YEAR)
889
 
0001-01-01 23:59:59.000000
 
890
0001-01-01 23:59:59
890
891
select date_sub("50-01-01 00:00:01",INTERVAL 2 SECOND);
891
892
date_sub("50-01-01 00:00:01",INTERVAL 2 SECOND)
892
 
2049-12-31 23:59:59.000000
 
893
2049-12-31 23:59:59
893
894
select date_sub("90-01-01 00:00:01",INTERVAL 2 SECOND);
894
895
date_sub("90-01-01 00:00:01",INTERVAL 2 SECOND)
895
 
1989-12-31 23:59:59.000000
 
896
1989-12-31 23:59:59
896
897
select date_sub("0069-01-01 00:00:01",INTERVAL 2 SECOND);
897
898
date_sub("0069-01-01 00:00:01",INTERVAL 2 SECOND)
898
 
0068-12-31 23:59:59.000000
 
899
0068-12-31 23:59:59
899
900
select date_sub("0169-01-01 00:00:01",INTERVAL 2 SECOND);
900
901
date_sub("0169-01-01 00:00:01",INTERVAL 2 SECOND)
901
 
0168-12-31 23:59:59.000000
 
902
0168-12-31 23:59:59
902
903
End of 5.1 tests