Сопоставить значения с текстом "на лету"

У меня есть следующая таблица:

store | dow |  turnover
------+-----+-----------
 1 |   1 | Eu59.426,00
 1 |   2 | Eu33.074,00
 1 |   5 | Eu38.855,00
 1 |   6 | Eu64.431,00

Скажите, пожалуйста, как представлять дни недели как воскресенье, понедельник и т. Д., Чтобы мне не приходилось создавать новую таблицу с этим сопоставлением.

2 ответа

Решение

Попробуй это:

SELECT store, (CASE dow WHEN 1 THEN 'Sunday' 
                        WHEN 2 THEN 'Monday' 
                        WHEN 3 THEN 'Tuesday' 
                        WHEN 4 THEN 'Wednesday' 
                        WHEN 5 THEN 'Thursday' 
                        WHEN 6 THEN 'Friday'  
                        WHEN 7 THEN 'Saturday' 
              END), turnover 
FROM tableA;

Попробуй это:

SELECT store, 
       CASE dow 
       WHEN 1 THEN 'Sunday' 
       WHEN 2 THEN 'Monday' 
       WHEN 3 THEN 'Tuesday' 
       WHEN 4 THEN 'Wednesday' 
       WHEN 5 THEN 'Thursday' 
       WHEN 6 THEN 'Friday'  
       WHEN 7 THEN 'Saturday' 
     END, turnover 
FROM <tablename>;

примечание: в mysql я думаю, что нет функции, которая может возвращать название дня по значению индекса,, DAYNAME('date')- это вызов только для получения имени дня на любую дату;

Другие вопросы по тегам