Иметь случай, когда вносить ту же стоимость, если соблюдены определенные критерии - PullRequest
1 голос
/ 27 февраля 2020

В Redshift SQL ––

Я хочу сделать случай вроде

 case when first_name ilike 'p%' 
      then (the cell's value) 
      else null 
 end as p_names

, поэтому, если у нас есть столбец:

|  name  |
+--------+
| patty  |
| bryan  |
| peter  |

результат было бы

| p_name |
+--------+
| patty  |
| (null) |
| peter  |

, так что в основном, если случай соблюден, он просто получает значение исходной ячейки на уровне каждой ячейки. Это возможно?

Ответы [ 2 ]

2 голосов
/ 27 февраля 2020
select case when col1 like 'p%' 
            then col1 
            else null 
       end p_names
from test

Вот демоверсия

Результат:

enter image description here

0 голосов
/ 27 февраля 2020

Ваше выражение выглядит хорошо, и его можно немного упростить: без else, case возвращает null, если не выполнено условие when, поэтому вы можете просто пропустить эту часть:

case when first_name ilike 'p%' then first_name end as p_names
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...