PostgreSQL: выберите, где отметка времени пуста - PullRequest
49 голосов
/ 18 декабря 2010

У меня есть запрос, который выглядит следующим образом:

SELECT * FROM table WHERE timestamp = NULL;

Столбец метки времени - это метка времени с типом данных часового пояса (второй тип в this Таблица).Это в PostgreSQL 8.4.

Я пытаюсь выполнить только выбор строк, в которые не вставлена ​​метка времени.Когда я смотрю на данные в pgAdmin, поле пустое и не показывает значения.Я пробовал где timestamp = NULL, 'EPOCH' (который, как вы думаете, будет значением по умолчанию), допустимая временная метка нулей (0000-00-00 00:00:00-00, которая приводит к ошибке вне диапазона), минимально возможная датав соответствии с документами (January 1, 4713 BC) и пустой строкой ('', которая просто получает ошибку несоответствия типов данных).Также, похоже, нет функции is_timestamp(), которую я мог бы использовать для проверки, если результат не является действительной временной меткой.

Итак, вопрос в том, какое значение в этом пустом поле я могу проверить?

Спасибо.

РЕДАКТИРОВАТЬ: поле не имеет значения по умолчанию.

1 Ответ

86 голосов
/ 18 декабря 2010

Попробуйте timestamp is null, так как я использую этот синтаксис в MySQL

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...