powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / из переменной даты получить промежуток всего года.
8 сообщений из 8, страница 1 из 1
из переменной даты получить промежуток всего года.
    #39626870
Rphoenix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, необходимо из переменной получить промежуток года.
Т.е. имеем :data='19.03.2018' - вытаскиваем год и преобразовываем в две переменные типа '01.01.2018' и '31.12.2018'.
Как можно выбрать только год из даты?
EXTRACT(YEAR FROM '06.08.2017') не получается.
...
Рейтинг: 0 / 0
из переменной даты получить промежуток всего года.
    #39626873
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
06.04.2018 15:37, Rphoenix пишет:
> EXTRACT(YEAR FROM '06.08.2017') не получается.

Код: sql
1.
EXTRACT(YEAR FROM date'06.08.2017')


Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
из переменной даты получить промежуток всего года.
    #39626874
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RphoenixEXTRACT(YEAR FROM '06.08.2017') не получается.EXTRACT(YEAR FROM date '06.08.2017')

вот только смысл выковыривать год из константы? подай на вход экстракту переменную типа даты, а не строку.
...
Рейтинг: 0 / 0
из переменной даты получить промежуток всего года.
    #39626888
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий
Код: sql
1.
EXTRACT(YEAR FROM date'06.08.2017')



либо дубовое

Код: sql
1.
EXTRACT(YEAR FROM CAST('06.08.2017') AS DATE)



Хотя, конечно, при чём тут константы, если речь о переменных...
...
Рейтинг: 0 / 0
из переменной даты получить промежуток всего года.
    #39626889
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скобочка не туда

Код: sql
1.
EXTRACT(YEAR FROM CAST('06.08.2017' AS DATE))
...
Рейтинг: 0 / 0
из переменной даты получить промежуток всего года.
    #39626897
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
cast('01.01.' || extract(year from :data) as date)
cast('31.12.' || extract(year from :data) as date)
...
Рейтинг: 0 / 0
из переменной даты получить промежуток всего года.
    #39626900
Rphoenix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большое спасибо! Выложу код (если кому-то нужно):


Код: sql
1.
2.
3.
select s.out_date from spisok s
where s.out_date between '01.01.'||EXTRACT(YEAR FROM CAST(:data AS DATE)) and '31.12.'||EXTRACT(YEAR FROM CAST(:data AS DATE))
order by s.out_date
...
Рейтинг: 0 / 0
из переменной даты получить промежуток всего года.
    #39627569
WildSery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
select s.out_date
  from spisok s
  where EXTRACT(YEAR from s.out_date) = EXTRACT(YEAR from CAST(:data AS DATE))


Код: sql
1.
2.
3.
select s.out_date
  from spisok s
  where s.out_date between :dataYearBegin and :dataYearEnd


Последний самый правильный.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / из переменной даты получить промежуток всего года.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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