0

I tried to change the current_date() from this link but I cannot make it work for records in a table. This is my query:

 select decode(extract('dayofweek_iso', LAST_MODIFIED_DATE),
  1, 'Monday',
  2, 'Tuesday',
  3, 'Wednesday',
  4, 'Thursday',
  5, 'Friday',
  6, 'Saturday',
  7, 'Sunday');
 FROM RTABLE

But it is returning SQL compilation error: error line 1 at position 39 invalid identifier 'LAST_MODIFIED_DATE'

Joseph
  • 502
  • 4
  • 15

2 Answers2

2

you column LAST_MODIFIED_DATE does not appear to exist in your table RTABLE

select decode(extract ('dayofweek_iso',current_date()),
  1, 'Monday',
  2, 'Tuesday',
  3, 'Wednesday',
  4, 'Thursday',
  5, 'Friday',
  6, 'Saturday',
  7, 'Sunday');

works, because current_date() always exists.

and if I use some VALUES and thus COLUMN1 is valid:

select decode(extract ('dayofweek_iso',column1),
  1, 'Monday',
  2, 'Tuesday',
  3, 'Wednesday',
  4, 'Thursday',
  5, 'Friday',
  6, 'Saturday',
  7, 'Sunday')
from values 
  ('2013-05-08T23:39:20.123+00:00'::date),
  ('2014-05-08T23:39:20.123+00:00'::date),
  ('2015-05-08T23:39:20.123+00:00'::date)
    ;

gives:

DECODE(EXTRACT ('DAYOFWEEK_ISO',COLUMN1), 1, 'MONDAY', 2, 'TUESDAY', 3, 'WEDNESDAY', 4, 'THURSDAY', 5, 'FRIDAY', 6, 'SATURDAY', 7, 'SUNDAY')
Wednesday
Thursday
Friday
 select decode(extract('dayofweek_iso', LAST_MODIFIED_DATE),
  1, 'Monday',
  2, 'Tuesday',
  3, 'Wednesday',
  4, 'Thursday',
  5, 'Friday',
  6, 'Saturday',
  7, 'Sunday')   /* ; <--- this needs to be removed */
 FROM RTABLE
Simeon Pilgrim
  • 22,906
  • 3
  • 32
  • 45
0

If you're okay with having 3 letters, dayname might come in more handy

select dayname(last_modified_date)
from t;
Radagast
  • 5,102
  • 3
  • 12
  • 27