- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
use [oktell]
select
(case when SUBSTRING([Call_status_note],1,1)='1'
then 'Расписание специалиста, ' else '' end)
+(case when SUBSTRING([Call_status_note],2,1)='1'
then 'Стоимость услуг, ' else '' end)
+(case when SUBSTRING([Call_status_note],3,1)='1'
then 'Адрес, ' else '' end)
+(case when SUBSTRING([Call_status_note],4,1)='1'
then 'Вакцина, 'else '' end)
+(case when SUBSTRING([Call_status_note],5,1)='1'
then 'Эл.почта, 'else '' end)
+(case when SUBSTRING([Call_status_note],6,1)='1'
then 'Перевод звонка в офис и др., 'else '' end)
+(case when SUBSTRING([Call_status_note],7,1)='1'
then 'Стоматология, 'else '' end)
+(case when SUBSTRING([Call_status_note],8,1)='1'
then 'Неверная информация, 'else '' end)
+(case when SUBSTRING([Call_status_note],9,1)='1'
then 'Ведение беременности, 'else '' end)
+(case when SUBSTRING([Call_status_note],10,1)='1'
then 'Услуги, операции, анализы, 'else '' end)
+(case when SUBSTRING([Call_status_note],11,1)='1'
then 'Вопросы скорой помощи, 'else '' end)
+(case when SUBSTRING([Call_status_note],12,1)='1'
then 'Звонок сорвался, 'else '' end) [Заметка]
from [dbo].[AbonentsMedPark]
Потребовали максимально быстро реализовать функциолнал. Есть текстовое поле вида "111111000000", надо по флагам вывести текст.
Конкретно с самим MSSQL работал мало. Я предлагал использовать функцию, мне отказали. Возможно ли реализовать этот запрос более оптимально?