Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как связать два IF в SQL  [new]
ВалькирияН
Member

Откуда:
Сообщений: 24
Есть запрос, я его наметила, подскажите, пожалуйста, как связать два условия?

DECLARE @a float--,@b datetime2
SELECT @a=avg_fragmentation_in_percent FROM sys.dm_db_index_physical_stats (DB_ID(), OBJECT_ID(N'[dbo].[Manh_RECEIPT_HEADER]'), NULL, NULL, NULL)
--select @b=convert(date,SYSDATETIME())
--if @b!='17-05-02'
IF @a>=30
ALTER INDEX all ON [dbo].Manh_RECEIPT_HEADER REBUILD WITH (FILLFACTOR = 90, SORT_IN_TEMPDB = ON)
ELSE
--IF @a between 5 and 30
ALTER INDEX all ON [dbo].Manh_RECEIPT_HEADER REORGANIZE

Здесь получается, если системная дата 2 мая 2017 г., то мы дальше сравниваем значение фрагментации и делаем какое-то действие, если сегодня другая дата,то скрипт не выполняется.
2 май 17, 09:41    [20448825]     Ответить | Цитировать Сообщить модератору
 Re: Как связать два IF в SQL  [new]
aleks2
Guest
if convert(date,SYSDATETIME()) ='20170502' begin

  IF @a>=30
     ALTER INDEX all ON [dbo].Manh_RECEIPT_HEADER REBUILD WITH (FILLFACTOR = 90, SORT_IN_TEMPDB = ON)
  ELSE IF @a between 5 and 30
     ALTER INDEX all ON [dbo].Manh_RECEIPT_HEADER REORGANIZE;

end;
2 май 17, 09:45    [20448833]     Ответить | Цитировать Сообщить модератору
 Re: Как связать два IF в SQL  [new]
ВалькирияН
Member

Откуда:
Сообщений: 24
aleks2, спасибо)
2 май 17, 09:48    [20448840]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить