Posgre SQL Фильтрация данных из отметки времени в предложении where - PullRequest
0 голосов
/ 24 апреля 2020

Я пытаюсь отфильтровать некоторые исторические данные из моей таблицы с интервалами (например, за месяц) и провел поиск, но не смог найти то, что искал.

в таблице есть столбец метки времени (tstamp) (целочисленный тип данных), который хранится в UNIX формате времени

SELECT tstamp, alrnumber, callduration 
FROM execute_data
WHERE alrnumber = '2011'
limit 10;`

возвращает

"tstamp";"alrnumber";"callduration"
1526435754;2011;415
1526531498;2011;287
1526615626;2011;13
1526620016;2011;270
1526856112;2011;0
1526856201;2011;0
1526860622;2011;0
1526868702;2011;248
1526949810;2011;0
1527028483;2011;4

Я могу использовать это, чтобы сделать дату в читаемом формате

SELECT alrnumber,entryname,callduration, to_char(to_timestamp(tstamp),'DD-MM-YYYY HH:MI:SS')

Таким образом, поле tstamp выглядит следующим образом

"2018-06-06 21:30:39"

Я не могу понять, как отфильтровать дату по интервалу в предложение where, чтобы я мог возвращать меньшие наборы данных за периоды времени.

Мой первый пост здесь, простите, если я не выполнил некоторые настройки для публикации.

1 Ответ

0 голосов
/ 25 апреля 2020

Как указали @ahorse_with_no_name и @Rhode Fischer, мне просто нужно было добавить правильный синтаксис для моего предложения where, спасибо за ваши ответы

SELECT tstamp, alrnumber, callduration FROM execute_data **WHERE to_timestamp(tstamp) > '2019-01-01' AND to_timestamp(tstamp) < '2019-04-01** AND alrnumber = '2011' limit 10;

...