powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Выборка дат
9 сообщений из 9, страница 1 из 1
Выборка дат
    #33097010
skylander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В таблице есть колонка date, мне необходимо выбрать все строки за какой-то месяц, сейчас я пользуюсь like (where date like '2005-06%') Может быть есть более удобный и быстрый способ; с ростом базы, используемый вариант перестаёт устраивать.
Спасибо заранее.
...
Рейтинг: 0 / 0
Выборка дат
    #33097028
Vlado
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это хорошо, что перестал устраивать :)

between нач_дата and кон_дата
?
...
Рейтинг: 0 / 0
Выборка дат
    #33097042
skylander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
СПАСИБО :)) Выполняется на 40 процентов быстрее :))
...
Рейтинг: 0 / 0
Выборка дат
    #33097510
drew0-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а это попробуй:

для текущего:
[SCR]
... WHERE date_trunc('month', date) = date_trunc('month', current_date)
[/src]
для любого
[SCR]
... WHERE date_trunc('month', date) = date_trunc('month', '2005-06-01')
[/SRC]
...
Рейтинг: 0 / 0
Выборка дат
    #33115312
pish_r
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
select * FROM Таблица
WHERE date_part('month', поле::timestamp)=номер_месяца ;

Это периоды которые поддерживаются
microseconds
milliseconds
second
minute
hour
day
month
year
decade
century
millennium
...
Рейтинг: 0 / 0
Выборка дат
    #33115682
Funny_Falcon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
drew0-
а это попробуй:

для текущего:
Код: plaintext
1.
... WHERE date_trunc('month', date) = date_trunc('month', current_date)
для любого
Код: plaintext
1.
... WHERE date_trunc('month', date) = date_trunc('month', '2005-06-01')

и индекс дополнить/создать по выражению:
Код: plaintext
1.
2.
create index ...
    (date_trunc('month',date)),
...
...
Рейтинг: 0 / 0
Выборка дат
    #33116182
drew0-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
skylander, ну что со скоростью?
...
Рейтинг: 0 / 0
Выборка дат
    #33123583
skylander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
drew0-а это попробуй:

для текущего:
[SCR]
... WHERE date_trunc('month', date) = date_trunc('month', current_date)
[/src]
для любого
[SCR]
... WHERE date_trunc('month', date) = date_trunc('month', '2005-06-01')
[/SRC]
Если использовать это, то запрос выполняется на секунды две -три дольше, чем, при указании периода дат, даже с использованием индекса по месяцу
...
Рейтинг: 0 / 0
Выборка дат
    #33128632
ilejn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если использовать это, то запрос выполняется на секунды две -три дольше, чем, при указании периода дат, даже с использованием индекса по месяцу

Честно говоря, я бы предположил, что тут что-то не так -
совет drew0- про функциональный индекс толковый и правильный.

Не мог бы ты привести результаты эксперимента?
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Выборка дат
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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