Гость
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Оператор Else / 10 сообщений из 10, страница 1 из 1
22.09.2020, 09:53
    #40001189
chasovoy96
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оператор Else
Уважаемые коллеги добрый день!
Прошу Вашей помощи.
Есть таблица SQL, в таблице есть цифровые значение (1,2,3) вместо данных цифровых значений хотел расписать:

Если значение "3" - то плановое отключение
Если значение "2" - то неотложное отключение
Если значение "1" - то аварийное отключение

Возможно ли это сделать при помощи оператора Else либо необходимо использовать другой оператор.
Буду очень благодарен Вам за помощь!
...
Рейтинг: 0 / 0
22.09.2020, 09:54
    #40001190
env
env
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оператор Else
chasovoy96,

Оператор называется CASE
...
Рейтинг: 0 / 0
22.09.2020, 10:00
    #40001193
chasovoy96
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оператор Else
env, Прошу прощения у меня версия очень старая 2008 , боюсь что не будет работать :(
...
Рейтинг: 0 / 0
22.09.2020, 10:02
    #40001194
Marat2020
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оператор Else
chasovoy96
env, Прошу прощения у меня версия очень старая 2008 , боюсь что не будет работать :(

Будет.
...
Рейтинг: 0 / 0
22.09.2020, 10:11
    #40001198
Агрох
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оператор Else
  • CASE
  • IIF
  • JOIN на таблицу с расшифровкой (предпочтительнее, если количество и текст расшифровок будет значительно меняться)
...
Рейтинг: 0 / 0
22.09.2020, 12:30
    #40001246
MaksK
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оператор Else
chasovoy96,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
create table #r
(
DateRecovery datetime
,TypeEvent int
,ObjectEvent nvarchar(50)
)

insert into #r(DateRecovery, TypeEvent, ObjectEvent)
select DateRecovery, TypeEvent, ObjectEvent
from
	(
	select getdate()-2 as DateRecovery, 3 as TypeEvent, 'day before yesterday' as ObjectEvent
union all
	select getdate()-1 as DateRecovery, 2 as TypeEvent, 'yesterday' as ObjectEvent
union all
	select getdate() as DateRecovery, 1 as TypeEvent, 'today' as ObjectEvent
	) as tb


select
	r.*
	,case when r.TypeEvent= 1 then 'аварийное отключение'
		  when r.TypeEvent= 2 then 'неотложное отключение'
		  when r.TypeEvent= 3 then 'плановое отключение'
		  else
			''
	 end as Type_Of_Shutdown

from #r r


drop table #r
...
Рейтинг: 0 / 0
22.09.2020, 12:44
    #40001249
chasovoy96
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оператор Else
MaksK, благодарю Вас!
...
Рейтинг: 0 / 0
22.09.2020, 12:45
    #40001251
MaksK
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оператор Else
chasovoy96, welcome )))
...
Рейтинг: 0 / 0
22.09.2020, 16:40
    #40001394
milenium
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оператор Else
Я бы хотела обратить внимание на предложение Агрох:

JOIN на таблицу с расшифровкой (предпочтительнее, если количество и текст расшифровок будет значительно меняться)

Самый устойчивый вариант.
...
Рейтинг: 0 / 0
23.09.2020, 06:33
    #40001508
chasovoy96
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Оператор Else
milenium, Благодарю Вас! В итоге сделал через case а Join взял на заметку
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Оператор Else / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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