2017-02-16 2 views
0

Может ли кто-нибудь помочь мне в достижении следующего?Как отклонять значения на основе другого значения поля

я получил следующий результат:

APP ¦ CW ¦  DT  ¦ DAY 
--------------------------- 
SKL ¦ 05 ¦ 2017-02-03 ¦ FRI 
SKL ¦ 06 ¦ 2017-02-06 ¦ MON 
SKL ¦ 06 ¦ 2017-02-07 ¦ TUE 
SKL ¦ 06 ¦ 2017-02-08 ¦ WED 
SKL ¦ 06 ¦ 2017-02-09 ¦ THU 
SKL ¦ 06 ¦ 2017-02-10 ¦ FRI 
SKL ¦ 07 ¦ 2017-02-13 ¦ MON 
SKL ¦ 07 ¦ 2017-02-14 ¦ TUE 
XZU ¦ 05 ¦ 2017-02-03 ¦ FRI 
XZU ¦ 06 ¦ 2017-02-06 ¦ MON 
XZU ¦ 06 ¦ 2017-02-07 ¦ TUE 
XZU ¦ 06 ¦ 2017-02-08 ¦ WED 
XZU ¦ 06 ¦ 2017-02-09 ¦ THU 
XZU ¦ 06 ¦ 2017-02-10 ¦ FRI 
XZU ¦ 07 ¦ 2017-02-13 ¦ MON 
XZU ¦ 07 ¦ 2017-02-14 ¦ TUE 
WIO ¦ 05 ¦ 2017-02-03 ¦ FRI 
WIO ¦ 06 ¦ 2017-02-06 ¦ MON 
.. 
. 

И вместо выше я хотел бы получить это:

APP ¦ CW ¦  DT  ¦ DAY 
--------------------------- 
SKL ¦ ¦ 2017-02-03 ¦ FRI 
SKL ¦ 06 ¦ 2017-02-06 ¦ MON 
SKL ¦ ¦ 2017-02-07 ¦ TUE 
SKL ¦ ¦ 2017-02-08 ¦ WED 
SKL ¦ ¦ 2017-02-09 ¦ THU 
SKL ¦ ¦ 2017-02-10 ¦ FRI 
SKL ¦ 07 ¦ 2017-02-13 ¦ MON 
SKL ¦ ¦ 2017-02-14 ¦ TUE 
XZU ¦ ¦ 2017-02-03 ¦ FRI 
XZU ¦ 06 ¦ 2017-02-06 ¦ MON 
XZU ¦ ¦ 2017-02-07 ¦ TUE 
XZU ¦ ¦ 2017-02-08 ¦ WED 
XZU ¦ ¦ 2017-02-09 ¦ THU 
XZU ¦ ¦ 2017-02-10 ¦ FRI 
XZU ¦ 07 ¦ 2017-02-13 ¦ MON 
XZU ¦ ¦ 2017-02-14 ¦ TUE 
WIO ¦ ¦ 2017-02-03 ¦ FRI 
WIO ¦ 06 ¦ 2017-02-06 ¦ MON 
.. 
. 

Так что я пытаюсь обнулить «CW» колонку когда «ДЕНЬ» не является «МОН». У этого должно быть простое решение, но пока я не нашел способ сделать это.

Заранее спасибо.

+5

Это возможно, но так как это вопрос презентации лучше сделать это в вашей логике программы –

+1

'случай, когда то Х конец дня =«MON», как cw', но Я согласен с комментарием @ juergend. – jarlh

+0

@mathguy, выражение этого случая должно было быть частью SELECT. Не изменять значения таблиц. – jarlh

ответ

2

Вы ищете CASE:

select APP, 
    case when day = 'MON' then CW end cw, 
    DT, 
    DAY 
from your_table; 
Смежные вопросы