powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / PostgreSQL Аналог функции Decode в Oracle
6 сообщений из 6, страница 1 из 1
PostgreSQL Аналог функции Decode в Oracle
    #35628142
vasisdas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, есть ли в PostgreSQL Аналог функции Decode из Oracle?
Описание функции Decode(Arg, 1, "Yes", 2, "No", 3, "MayBe",......, "Empty")
Если Arg = 1 возврат "Yes", Arg = 2 возврат, "No", Arg = 3 возврат, "MayBe", ..... ,
иначе возврат "Empty"
Функция может принимать аргументы разных типов
...
Рейтинг: 0 / 0
PostgreSQL Аналог функции Decode в Oracle
    #35628216
Фотография Ёш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть аналог в SQL:

Код: plaintext
case Arg when  1  then 'Yes' when  2  then 'No' when  3  then 'MayBe' else 'Empty' end


--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери
...
Рейтинг: 0 / 0
PostgreSQL Аналог функции Decode в Oracle
    #35628247
vasisdas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это не совсем то, что мне надо. Если аналогов нет буду свою ваять
...
Рейтинг: 0 / 0
PostgreSQL Аналог функции Decode в Oracle
    #35628414
Фотография Ёш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а так:
Код: plaintext
coalesce((array['Yes', 'No', 'Maybe'])[Arg], 'Empty')
прадва это только если Arg - integer


--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери
...
Рейтинг: 0 / 0
PostgreSQL Аналог функции Decode в Oracle
    #35628533
vasisdas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На сколько я знаю coalesce вернет 'Empty' только если Arg = NULL, а если Arg = 20 например, что тогда?
Но, всё равно, за идею спасибо.
...
Рейтинг: 0 / 0
PostgreSQL Аналог функции Decode в Oracle
    #35629381
Гость_0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vasisdasНа сколько я знаю coalesce вернет 'Empty' только если Arg = NULL, а если Arg = 20 например, что тогда?
Но, всё равно, за идею спасибо.тогда будет обращение к несуществующему элементу массива, что даст NULL и coalesce так же вернет 'Empty'
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / PostgreSQL Аналог функции Decode в Oracle
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]