Привет всем
1. Правильно ли я возвращаю несколько значений, в виде RECORD
CREATE OR REPLACE FUNCTION get_curr_speeds(INT) RETURNS RECORD AS $$
нельзя как в Fb
...
RETURNS
(
B INTEGER,
A VARCHAR(100),
C BLOB
)
?
2. Как вытащить последний RecordID (SERIAL)
lpids RECORD;
BEGIN
SELECT INTO lpids MAX(id) AS lid, MAX(id) - 1 AS pid FROM session_stats WHERE session_id = $1;
так правильно ?
3. Как лучше разницу между временем высчитать ? (что-то вроде: UNIXTIMESTAMP - UNIXTIMESTAMP)
BEGIN
SELECT INTO seconds TO_NUMBER(TO_CHAR((SELECT created FROM session_stats WHERE id = $1) - (SELECT created FROM session_stats WHERE id = $2), 'SSSS'), '99G999D9S');
RETURN seconds;
END;
только так ?
Мне надо время между обновлениями получить..
4. Правильно так использовать наследование
CREATE TABLE stats
(
li_octets INT DEFAULT 0,
lo_octets INT DEFAULT 0,
wi_octets INT DEFAULT 0,
wo_octets INT DEFAULT 0
);
CREATE TABLE sessions
(
id BIGSERIAL,
username VARCHAR(128) REFERENCES accounts(username),
started TIMESTAMP DEFAULT NOW(),
ended TIMESTAMP
) INHERITS (stats);
INSERT INTO sessions (username) VALUES ('halflife');
CREATE TABLE session_stats
(
id BIGSERIAL,
session_id BIGINT,
created TIMESTAMP DEFAULT NOW()
) INHERITS (stats);
?
Знаю, надо книжку какую нибудь почитать, но у меня щас денег нет на бумажный вариант а с экрана много вычитать мне трудно =( Потому прошу за скорее всего дурацкие вопросы сильно не пинать =)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум pg_query -> mysql_query, need help (2007)
- Форум stored procedure Postgres (2004)
- Форум вложенные запросы - mysql (2007)
- Форум MySQL, INSERT ... SELECT ... FROM DUAL (2012)
- Форум [MySQL] кодировка передаваемых в процедуру параметров. (2011)
- Форум тупилово (2008)
- Форум Проблема с упорядочиванием записей в PostgreSQL (2017)
- Форум Сложные условия в процедурах\триггерах MySQL (2017)
- Форум Оптимизации 5 000 000 таблицы (2015)
- Форум Функция MySQL (2011)