Alex Cherednichenko пишет:
Чем тебе EXTRACT() не угодил?..
пример.
нужно выбрать документы за текущую неделю.
WHERE doucment_date BETWEEN date1 AND date2
нужно соответственно узнать дату начала недели (date1) и конца недели (date2)
с помощью выше указанной функции это можно сделать вот так
(также используется стандартная из FB_UDF ADDDAY)
SELECT
ADDDAY(CURRENT_TIMESTAMP, ((SELECT DOW(CURRENT_TIMESTAMP) FROM RDB$DATABASE)-2)*-1) AS
"WeekBegin",
ADDDAY(CURRENT_TIMESTAMP, (8-(SELECT DOW(CURRENT_TIMESTAMP) FROM RDB$DATABASE))) AS
"WeekEnd",
ADDDAY(
ADDDAY(CURRENT_TIMESTAMP, ((SELECT DOW(CURRENT_TIMESTAMP) FROM
RDB$DATABASE)-2)*-1)
, -7) AS "PrevWeekBegin",
ADDDAY(
ADDDAY(CURRENT_TIMESTAMP, ((SELECT DOW(CURRENT_TIMESTAMP) FROM
RDB$DATABASE)-2)*-1),
-1) AS "PrevWeekEnd"
FROM RDB$DATABASE