SQL qn: - регистр выражений - PullRequest
1 голос
/ 06 октября 2009

У меня есть данные в таблице a, которые я хочу обработать и создать в другой таблице b. Хотите знать, как это сделать. Я думал о создании вложенных выражений CASE. Но это выполнимо?

Например: -

Таблица: -

S En Например,

-0,2 7888 99 90 9000 788 100 999 888

Я хочу создать другую таблицу b, которая делает это: -

выберите Случай, когда S <0, то (S + 1 / En-Eg) <br> ELSE (S-1 / En-Eg)) END AS Z от

Я также хочу сравнить Z с другими значениями: -

Если z> 0, то «Хорошо» еще «Плохо»

Что-то в этом роде, могу ли я сделать это и внутри таблицы b?

1 Ответ

2 голосов
/ 06 октября 2009

Вы можете «повторно» использовать выражение CASE, если выполняете его в подзапросе:

SELECT z, CASE WHEN z > 0 THEN 'Good' ELSE 'Bad' END AS zdesc
FROM (
    SELECT CASE WHEN S < 0 
        THEN (S + 1 / En - Eg)
        ELSE (S - 1 / En - Eg) END AS z 
    FROM a
) b
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...