Вопросы по SQL и другие аспекты работы PostgreSQL

warning: Creating default object from empty value in /var/www/victor/web/pgdocs.ru/data/modules/taxonomy/taxonomy.pages.inc on line 33.
Здесь обсуждаются запросы на SQL в PostgreSQL. Оптимизация запросов, реализация, подходы и т.д.

AVG и тип money

Изображение msi

Мне кажется странным, что я не могу написать следующее

SELECT avg(price) FROM PC,

а вынужден делать двойное преобразование типа, да еще и вычищать форматирование:

 SELECT avg(regexp_replace(price::text, '[$,]', '', 'g')::numeric) FROM pc;

Хотя с другой стороны, я могу написать так:

SELECT sum(price)/count(price) AS avg_foo FROM pc;

Что характерно, я получаю в последнем случае в качестве результата тип money, что и должно бы быть при использовании функции AVG, т.к. согласно стандарта, результат агрегата наследует тип данных аргумента.

Перенос таблиц из одной базы в другую

Здраствуйте я щас пишу портал из сайтов на друпале (не суть важно), к сожалению а может к счастью, но на тестовой платформе (centos) не захотел работать mysql(я не имею большого опыта в администратирование веб серверов). Но в сборке был выбор поставить postgresql, чем я и воспользовался после небольшого совещания с гуглом по этому вопросу начал задумываться что для моих целей mysql в будущем может стать слабым местом(много баз данных большого объёма + полнотекстовый поиск + вдруг ещё что заинтересует во время знакомства с pgsl), хотя на сегодняшний момент устроил бы.

Как можно получить список всех внешних ключей БД

Подскажите пожалуйста как можно узнать какие связи заданы для таблиц БД, или где про это можно почитать. Заранее спасибо.

COPY как замена INSERT'у

Изображение the_voodoo

Всем доброго!
Столкнулся с проблемой.
Перевел проект с MySQL на Postgres!

Есть проблема.
Мне надо из CSV файла перенести записи в таблицу.
Сделал по аналогии, как я делал в MySQL. Но понял что на добавление 220 тыс. записей (в CSV всего два столбца.) уходит очень много времени.

Почитал в интернете.
1) Делал все в одной транзакции... не помогло, ощутимого приростса я вообще не заметил.

    BEGIN;
    INSERTs....
    INSERTs....
    INSERTs....
...
    INSERTs....
 
    COMMIT;

2) Делал ещё так (что вообще тут происходит поясните плз) ):

Проблемы с отладкой pg/pgsql функций

Всем доброго дня.
Реализовал простейшие функции возвращающие несколько OUT параметров - то есть RECORD
Функция работает, при запуске ведет себя адекватно. Но стоит мне обратится к ней из сторонней функции:

DECLARE
 rec1 RECORD;
BEGIN
 rec1:=func1(arg1,arg2);
END;

При запуске всё работает нормально, но во время отладки, возникает странная ошибка "Syntax Error" на 4ой строчке, на переменной rec1
Проблема в том что мне необходимо отладить функцию.

Очень нужна помощь!

У меня проблема: сделал резервную копию сервера. Создался файл .sql размером в 500 мб. Форматную фиск, переустановил винду, поставил postgres, захожу опять в программу администрирования, но функции создания сервера из резервной копии нигде не нашел! Помогите пожалуйста!!!

Как мониторить SQL запросы к БД на локальном компе?

Здравствуйте. БД установлена на моем компе. Другая программа с моего же компа с ней работает. Как узнать какие запросы программа отправляет к БД?

Как перевернуть таблицу

Необходимо перевернуть таблицу
________________________________________________
Column1 | Date | Column2 |
_______|_______|________|
aaaaaa |1/01/10 |123 |
--------------------------------------
bbbbbb |2/01/10 |234 |
--------------------------------------
aaaaaa |3/01/10 |453 |
--------------------------------------

После выполнения запроса таблица должна принять вид

Column1 | 1/01/10 | 2/01/10 | 3/01/10 |
_______|_______|________|_______ |
aaaaaa | 123 | | 453 |

Таблица без столбцов

Изображение msi

Согласно стандарту, таблица должна иметь один или более столбцов. Соответственно, нельзя удалить единственный столбец в таблице. Подобное действие должно вызывать ошибку, т.к. это эквивалентно удалению таблицы, для чего имеется оператор DROP TABLE.
В версии 8.3 я могу получить таблицу без столбцов:

CREATE TABLE fooo();

и удалить единственный столбец:

CREATE TABLE foo(f int PRIMARY KEY);
ALTER TABLE foo DROP COLUMN f;

Вопрос чайника PostgreSQL+MapInfo

Добрый день!

Скорее всего я задаю вопрос не в этой ветке форума. Но все же спрошу.

Собранный материал

Back to top

(С) Виктор Вислобоков, 2008-2023