powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Использование данных в столбце за предыдущий период
11 сообщений из 11, страница 1 из 1
Использование данных в столбце за предыдущий период
    #39567583
Bonddage
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте добрые люди.
Подскажите пожалуйста.
Есть данные 3х столбцов dt, A1, B2
Как написать запрос:
Если dt >= '01.11.2017' , то в качестве данных по А1 использовать данные по А1 только за январь 2017 года?

Написал:
SELECT IIF dt, (t1.dt >= '01.11.2017', t2.A1, t1.A1) as A1, B2
FROM table as t1
LEFT JOIN ( SELECT dt, A1
FROM table
WHERE dt between @bdt and @edt ) as t2 ON t1.dt = t2.dt
В ноябре как раз меняет значение А1 , но только на null. В принципе понятно почему. Но не понятно как надо чтобы брались январские значения?
...
Рейтинг: 0 / 0
Использование данных в столбце за предыдущий период
    #39567585
Cammomile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А количество строк за ноябрь и январь у тебя всегда одно и тоже?!
...
Рейтинг: 0 / 0
Использование данных в столбце за предыдущий период
    #39567590
Bonddage
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Cammomile,

извини забыл написать.
Допустим да, одно и то же.
каждый день , каждый час , т.е.:
01.11.2017 00:00:00
01.11.2017 01:00:00
01.11.2017 02:00:00
......
01.11.2017 22:00:00
01.11.2017 23:00:00
02.11.2017 00:00:00
02.11.2017 01:00:00
.....

Ноябрь конечно может не лучший пример. Можно где количество дней одинаковое.
суть в том что берутся значения за тот же день за тот же час только с января
...
Рейтинг: 0 / 0
Использование данных в столбце за предыдущий период
    #39567592
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bonddage,

Два запроса через union all.
...
Рейтинг: 0 / 0
Использование данных в столбце за предыдущий период
    #39567599
Bonddage,

а когда понадобятся "значения за тот же день за тот же час только с" февраля, как действовать будешь для 29, 30 и 31 числа?
...
Рейтинг: 0 / 0
Использование данных в столбце за предыдущий период
    #39567603
Cammomile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лаг постоянной или такая специфика только для Января - Ноября?
...
Рейтинг: 0 / 0
Использование данных в столбце за предыдущий период
    #39567655
Bonddage
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Cammomile,

постоянный.
...
Рейтинг: 0 / 0
Использование данных в столбце за предыдущий период
    #39567656
Bonddage
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый Э - Эх,
Только январь)
Конечно самое идеальное это просто брать значения год назад
но хотелось бы с месяцами тоже понять
...
Рейтинг: 0 / 0
Использование данных в столбце за предыдущий период
    #39567713
Cammomile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так какая логика с 29 февраля и 30-31 в обычных месяцах?
Или тебя устроит просто "30 календарных дней назад"?
...
Рейтинг: 0 / 0
Использование данных в столбце за предыдущий период
    #39568062
Bonddage
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Cammomile,

минус год
для 29 февраля за 2012 год
...
Рейтинг: 0 / 0
Использование данных в столбце за предыдущий период
    #39568130
Cammomile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну значит готовь отдельный набор данных, где примаплены текущие данные к тем, которые идут с лагом.

Если у тебя, к примеру, записи имеют сквозную нумерацию, можно от текущего ИД отнимать N, где N - число записей в год.

Если ты за это поручиться не можешь, то надо как-то по датам отдельно начитывать. Но ключевое тут, конечно же, отдельное отношение, на которое ты будешь джойниться.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Использование данных в столбце за предыдущий период
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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