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

Откуда:
Сообщений: 145
Здравствуйте.
Прошу помочь с таким вопросом:

Всем известная функция: DATEADD(datepart, число, дата)

Мне надо использовать её так, чтобы параметр datepart был динамическим.
Строковые значения, вроде 'm', функция не принимает.

Как это можно сделать?
20 фев 14, 15:54    [15599210]     Ответить | Цитировать Сообщить модератору
 Re: datepart как динамический параметр в функциях дат (DATEADD, например)  [new]
iap
Member

Откуда: Москва
Сообщений: 47000
Andrey_VP,

можно в DSQL, а можно всё пересчитывать в секунды, например.
20 фев 14, 15:56    [15599219]     Ответить | Цитировать Сообщить модератору
 Re: datepart как динамический параметр в функциях дат (DATEADD, например)  [new]
datepart
Guest
Andrey_VP
Здравствуйте.
Прошу помочь с таким вопросом:

Всем известная функция: DATEADD(datepart, число, дата)

Мне надо использовать её так, чтобы параметр datepart был динамическим.
Строковые значения, вроде 'm', функция не принимает.

Как это можно сделать?

if/case/диамический sql
20 фев 14, 15:56    [15599221]     Ответить | Цитировать Сообщить модератору
 Re: datepart как динамический параметр в функциях дат (DATEADD, например)  [new]
iap
Member

Откуда: Москва
Сообщений: 47000
iap
Andrey_VP,

можно в DSQL, а можно всё пересчитывать в секунды, например.
Или подготовить CASE для всех возможных значений datepart с жёстким соответствующим вызовом
20 фев 14, 15:57    [15599225]     Ответить | Цитировать Сообщить модератору
 Re: datepart как динамический параметр в функциях дат (DATEADD, например)  [new]
Andrey_VP
Member

Откуда:
Сообщений: 145
Спасибо.

Про переборку всех значений я уже думал, придётся так и делать.
А динамический sql не хочу.
20 фев 14, 16:01    [15599259]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить