Вопрос : Функция TSQL скалярная using отборное внутри функции & даты исключать

Я извиняюсь заранее для спрашивать правоподобно основной вопрос, проблема что я нов к SQL и затруднениям иметь с syntax.

I am писать эту функцию: dbo функции

Alter.
Fn_get_last_day (@d datetime
@d
begin

declare @d
as datetime

Returns установленные = случай =
@d @FN_InputDt

select когда @FN_InputDt = 0 после этого 0 else
выбирает день (@Fn_InputDt) DatePart (d, @FN_InputDt) end

Return

End

Here
возвращенные ошибки:
Msg 156, уровень 15, положение 1, процедура FN_GET_LAST_DAY, линия синтаксис 16
incorrect около ключевого слова «выбирает».
Msg 102, уровень 15, положение 1, процедура FN_GET_LAST_DAY, линия br/>
END'< линии синтаксиса синтаксиса 16
Incorrrect ближайше 'br/>Msg 102 D'<, уровень 15, положение 1, процедура FN_GET_LAST_DAY, 21
Incorrect ближайше ' class=

Ответ : Функция TSQL скалярная using отборное внутри функции & даты исключать

Теперь я вижу вы поже.

измените dbo функции. Fn_get_last_day (datetime @FN_InputDt)
возвращает int
как
начните
возвратите случай когда @FN_InputDt=0 после этого 0 других дней (dateadd (m, 1+datediff (m, 0, @FN_InputDt), 0) - 1) конец
конец

X = datediff (m, 0, @FN_InputDt) -- высчитывает сколько месяцы истекали от «фактически даты 0»
Y = dateadd (m, 1+X, 0) -- добавляет месяцы 1+X к «фактически дате 0», поэтому мы находимся в следующем месяце (X+1)
Примечание: побочный эффект что он также установил дн-в-месяц к 1-ому дню месяца
Z = Y-1  -- примите один выходной день, поэтому мы находимся назад в этом месяце, на последнем дне
День (z)   --- получите день месяца
Другие решения  
  •  Как я добавляю кнопки на форме PDF для того чтобы добавить/извлекаю рядки данных?
  •  Шнур ошибки в блоке задвижки?
  •  сколько вариант сервера SQL на одной машине
  •  Внешний вид 2007 не может архивный файл открытой сети сохраненный
  •  Активно директория DNS записывает вопрос
  •  Отчет о доступа 2010 экспорта к CSV с коллекторами?
  •  Прокладчик OCE 9400 не начинает
  •  как добавить десятичное место в формуле в отчете о кристалла seagate
  •  Windows XP и Мичрософт Оутлоок и проблемы установителя Windows
  •  VB6 к VS2010 - консультации тренировки?
  •  
    programming4us programming4us