Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Firebird. Перечислить даты указанного месяца
|
|||
|---|---|---|---|
|
#18+
Подскажите пожалуйста как в Firebird перечислить даты указанного месяца и года, например, Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2015, 04:42 |
|
||
|
Firebird. Перечислить даты указанного месяца
|
|||
|---|---|---|---|
|
#18+
tarakan, читайте в доке рассказы про ф-ции для работы с датами (в частности - extract & dateadd). Неплохо будет работать селективная ХП с входными параметрами a_year, a_month () и циклом из макс. 31 итерации. Но в соединениях её придется всегда указывать ведомой, т.е. select ... from some_table left join sp_get_dates on ... - а это лишает оптимизатор возможности выбора ведущего источника. Второй способ - заведите таблицу-календарь со всеми датами от 01.01.0001 до 31.12.9999 (их около 3.6 млн). Добавьте индекс computed by ( extract(year from d) * 100 + extract(month from d) - и затем делайте выборку из неё по этому индексу, применяя extract()*100 + extract() к вашим :a_year, :a_month. Можно всё вытащить и на чистом SQL, без таблиц и ХП, но по скорости это будет хуже из-за лишних обращений к rdb$database. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2015, 08:43 |
|
||
|
Firebird. Перечислить даты указанного месяца
|
|||
|---|---|---|---|
|
#18+
tarakan, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2015, 08:45 |
|
||
|
Firebird. Перечислить даты указанного месяца
|
|||
|---|---|---|---|
|
#18+
Спасибо огромное! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2015, 10:40 |
|
||
|
Firebird. Перечислить даты указанного месяца
|
|||
|---|---|---|---|
|
#18+
Поспешил... Симонов Денис, Если делаю запрос Код: sql 1. 2. 3. 4. 5. то возвращается CONSTANT - 01.12.2014 DATEADD - 31.01.2015 Почему так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2015, 11:25 |
|
||
|
Firebird. Перечислить даты указанного месяца
|
|||
|---|---|---|---|
|
#18+
tarakan, всё правильно. У меня в примере я к начальной дате прибавляю. А ты к последней дате месяца добавляешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2015, 11:29 |
|
||
|
|

start [/forum/topic.php?fid=40&fpage=82&tid=1563076]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
60ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
| others: | 14ms |
| total: | 167ms |

| 0 / 0 |
