cat > script <<'+-+-+-+-+-END-OF-FILE-+-+-+-+-+'
set MSQLSELWARN to "warn";
set MSQLECHO to "batch conv";
create edat (dat1 date(0), dat2 date(1));
insert edat set dat1 to '12/12/87', dat2 to '11/11/87';
select dat1, datenext(dat1,'Monday') from edat;
select datenext(dat1,1) from edat;
select dat1, datenext(dat1 + 2 months,'Monday') from edat;
select dat1, datenext(dat1 + 29 days,'tuesday') from edat;
select datenext(dat1,8) from edat;
select dayofweek(dat1), dayofweek(dat2) from edat;
select dat1, dayname dayofweek(dat1), dayofweek(dat1) from edat;
select dayofyear(dat1), dayofyear(dat1 + 19 days), dayofyear(dat1 + 19 days + 1 years) from edat;
select dayofyear(datenext(dat1 - 3 months, 'monday')) from edat;
select dayname(dayofweek(dat2)) from edat;
drop edat;
+-+-+-+-+-END-OF-FILE-+-+-+-+-+
chmod 644 script
cat > stdout <<'+-+-+-+-+-END-OF-FILE-+-+-+-+-+'
* * * create edat (dat1 date(0), dat2 date(1));
* insert edat set dat1 to '12/12/87', dat2 to '11/11/87';
* select dat1, datenext(dat1,'Monday') from edat;
    dat1  DATENEXT(dat1,  'Monday')

19871212       19871214000000000000
* select datenext(dat1,1) from edat;
   DATENEXT(dat1, 1)

19871214000000000000
* select dat1, datenext(dat1 + 2 months,'Monday') from edat;
    dat1  DATENEXT((dat1 + (2 months)),  'Monday')

19871212                      19880215000000000000
* select dat1, datenext(dat1 + 29 days,'tuesday') from edat;
    dat1  DATENEXT((dat1 + (29 days)),  'tuesday')

19871212                      19880112000000000000
* select datenext(dat1,8) from edat;
   DATENEXT(dat1, 8)


*** Error: expression error
day must be between 0 and 6 - skipping record
* select dayofweek(dat1), dayofweek(dat2) from edat;
(dayofweek dat1)  (dayofweek dat2)

               6                 3
* select dat1, dayname dayofweek(dat1), dayofweek(dat1) from edat;
    dat1  (dayname (dayofweek dat1))  (dayofweek dat1)

19871212  Saturday                                   6
* select dayofyear(dat1), dayofyear(dat1 + 19 days), dayofyear(dat1 + 19 days + 1 years) from edat;
(dayofyear dat1)  (dayofyear (dat1 + (19 days)))  (dayofyear ((dat1 + (19 days)) + (1 years)))

             346                             365                                           366
* select dayofyear(datenext(dat1 - 3 months, 'monday')) from edat;
(dayofyear DATENEXT((dat1 - (3 months)),  'monday'))

                                                 257
* select dayname(dayofweek(dat2)) from edat;
(dayname (dayofweek dat2))

Wednesday
* drop edat;
* 
+-+-+-+-+-END-OF-FILE-+-+-+-+-+
chmod 644 stdout
cat > tag <<'+-+-+-+-+-END-OF-FILE-+-+-+-+-+'
Test date function expressions: datenext(), dayofweek, dayname, dayofyear
+-+-+-+-+-END-OF-FILE-+-+-+-+-+
chmod 644 tag
cat > stdout.jp_euc <<'+-+-+-+-+-END-OF-FILE-+-+-+-+-+'
* * * create edat (dat1 date(0), dat2 date(1));
* insert edat set dat1 to '12/12/87', dat2 to '11/11/87';
* select dat1, datenext(dat1,'Monday') from edat;
    dat1  DATENEXT(dat1,  'Monday')

19871212       19871214000000000000
* select datenext(dat1,1) from edat;
   DATENEXT(dat1, 1)

19871214000000000000
* select dat1, datenext(dat1 + 2 months,'Monday') from edat;
    dat1  DATENEXT((dat1 + (2 months)),  'Monday')

19871212                      19880215000000000000
* select dat1, datenext(dat1 + 29 days,'tuesday') from edat;
    dat1  DATENEXT((dat1 + (29 days)),  'tuesday')

19871212                      19880112000000000000
* select datenext(dat1,8) from edat;
   DATENEXT(dat1, 8)


*** Error: 顼
դϣ飶Ǥ - 쥳ɤɤФޤ
* select dayofweek(dat1), dayofweek(dat2) from edat;
(dayofweek dat1)  (dayofweek dat2)

               6                 3
* select dat1, dayname dayofweek(dat1), dayofweek(dat1) from edat;
    dat1  (dayname (dayofweek dat1))  (dayofweek dat1)

19871212  Saturday                                   6
* select dayofyear(dat1), dayofyear(dat1 + 19 days), dayofyear(dat1 + 19 days + 1 years) from edat;
(dayofyear dat1)  (dayofyear (dat1 + (19 days)))  (dayofyear ((dat1 + (19 days)) + (1 years)))

             346                             365                                           366
* select dayofyear(datenext(dat1 - 3 months, 'monday')) from edat;
(dayofyear DATENEXT((dat1 - (3 months)),  'monday'))

                                                 257
* select dayname(dayofweek(dat2)) from edat;
(dayname (dayofweek dat2))

Wednesday
* drop edat;
* 
+-+-+-+-+-END-OF-FILE-+-+-+-+-+
chmod 644 stdout.jp_euc
