Модераторы: LSD
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как добавить несколько дней, к дате в PostgreSQL 
V
    Опции темы
DEER
Дата 12.1.2007, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 749
Регистрация: 12.4.2005
Где: г. Рязань

Репутация: нет
Всего: 13



Добрый день.
СУБД PostgreSQL 8.1
Есть такая табличка
Код

CREATE TABLE file
(
  sys_status int8 NOT NULL DEFAULT 0,
  order_id int8 NOT NULL,
  composition_id int8 NOT NULL,
  from_date timestamp,  -- дата создания
  validperiod int4 NOT NULL -- количество дней


хочу выбрать даты окончания действия ("дата создания"+"количество дней")
пытался так
Код

SELECT to_timestamp(validperiod*60000)+from_date
FROM keyfile

но при выполнении ошибка
Цитата
operator does not exist: timestamp with time zone + timestamp without time zone


Поискал по сети какойнить мануальчик по функциям Postgre, но ничего не нашел..
Вопрос такой: Как можно к типу "timestamp without time zone" прибавить количество дней, хранящееся в числе?

И ещё был бы благодарен за ссылку на описание функций Prostgre


--------------------
 
PM MAIL WWW ICQ MSN   Вверх
DEER
Дата 12.1.2007, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 749
Регистрация: 12.4.2005
Где: г. Рязань

Репутация: нет
Всего: 13



не знаю, на сколько это решение корректо, но у немя получилось сделать это так
Код

SELECT from_date + (to_char(validperiod, 99999999)||' days' )::interval
FROM file


Добавлено @ 12:48 
кстати очень порадовало....
нашел главу Date/Time Functions and Operators
так там таблица, в ней операция 
timestamp-timestamp присутствует, а timestamp+timestamp - нет  smile 


--------------------
 
PM MAIL WWW ICQ MSN   Вверх
LSD
Дата 12.1.2007, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 3
Всего: 538



Цитата(DEER @  12.1.2007,  12:46 Найти цитируемый пост)
timestamp-timestamp присутствует, а timestamp+timestamp - нет

Потому, что операция timestamp-timestamp даст временной интервал между двумя датами. А вот что должно быть если к 5 января прибавить 31 декабря, непонятно.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
DEER
Дата 12.1.2007, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 749
Регистрация: 12.4.2005
Где: г. Рязань

Репутация: нет
Всего: 13



в натуре...  smile 


--------------------
 
PM MAIL WWW ICQ MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PostgreSQL | Следующая тема »


 




[ Время генерации скрипта: 0.0455 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.