Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4   вперед  Ctrl      все
 Re: Недостатки PostrgeSQL  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54794

bochkov
он count медленно считает,ну просто писец,

Привыкай не использовать count по целой таблице. Это особенность всех версионников.

Posted via ActualForum NNTP Server 1.5

8 сен 12, 14:19    [13133857]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
bochkov
Member

Откуда: Камчатка
Сообщений: 4093
Dimitry Sibiryakov
Это особенность всех версионников.

кто это?
8 сен 12, 14:23    [13133869]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
mikron
Member

Откуда:
Сообщений: 888
Для меня 3 года назад решаюшим критерием стал слабый оптимизатор, и особенность, что план выполнения запроса из процедуры не подстраивался / перестраивался в зависимости от релальных параметров. В остальном же постгрес вполне на уровне.
И по моему велись работы, по добавлению информации о видимости транзакций в индексы. А это сразу даёт bust для многих запросов.
8 сен 12, 23:16    [13135110]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
tanglir
Member

Откуда:
Сообщений: 28966
mikron
слабый оптимизатор
Это смотря с чем сравнивать :)
mikron
bust
boost же.
9 сен 12, 16:32    [13136457]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
mikron
Member

Откуда:
Сообщений: 888
mikron
bust
boost же.[/quot]
Моя безграмотность и автокорекция.
Burst иммел в виду.
9 сен 12, 19:58    [13136994]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
Росгоснанораспилтрест
Member [заблокирован]

Откуда: Главпилорама
Сообщений: 2421
В Постгресе есть такая штука - UPDATE FROM. Блин, как мне её сейчас не хватает в оракле... Ну как, КАК они до сих пор не допёрли до такой очевидной вещи? Приходится извращаться с анонимными PL/SQL блоками...
10 сен 12, 23:26    [13143083]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54794

Росгоснанораспилтрест
Приходится извращаться с анонимными PL/SQL блоками...

Это общая судьба нечитателей. Они знают все извращения, но не стандартный запрос MERGE.

Posted via ActualForum NNTP Server 1.5

10 сен 12, 23:37    [13143111]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
Росгоснанораспилтрест
Member [заблокирован]

Откуда: Главпилорама
Сообщений: 2421
Dimitry Sibiryakov
Росгоснанораспилтрест
Приходится извращаться с анонимными PL/SQL блоками...

Это общая судьба нечитателей. Они знают все извращения, но не стандартный запрос MERGE.


UPDATE table 1 t1
SET field1 = sq.field1
FROM (тут большой селект с кучей джойнов и прочей ботвой) sq
WHERE t1.id = sq.id AND t1.date BETWEEN sq.date1 AND sq.date2


Помоги перевести в Merge. Я не допёр. С меня пиво.
11 сен 12, 00:14    [13143200]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54794

Росгоснанораспилтрест
Помоги перевести в Merge. Я не допёр.

А в чём проблема-то?
MERGE INTO table_1 t1
USING (тут большой селект с кучей джойнов и прочей ботвой) sq
ON t1.id = sq.id AND t1.date BETWEEN sq.date1 AND sq.date2
WHEN MATCHED THEN UPDATE SET field1 = sq.field1

Posted via ActualForum NNTP Server 1.5

11 сен 12, 00:25    [13143223]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
Мистер
Guest
Dimitry Sibiryakov
Росгоснанораспилтрест
Помоги перевести в Merge. Я не допёр.

А в чём проблема-то?
MERGE INTO table_1 t1
USING (тут большой селект с кучей джойнов и прочей ботвой) sq
ON t1.id = sq.id AND t1.date BETWEEN sq.date1 AND sq.date2
WHEN MATCHED THEN UPDATE SET field1 = sq.field1


Он на 100% идентичен приведенному выше UPDATE FROM?
11 сен 12, 00:52    [13143287]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
V&N
Guest
Росгоснанораспилтрест, так не работает?
postgresql
update employee_bonus
  set bonus = 0 
 from employee_bonus b 
 join employees e on b.employee_id = e.employee_id
where e.bonus_eligible = 'N'
oracle
 update (select bonus 
           from employee_bonus b 
          inner join employees e on b.employee_id = e.employee_id 
          where e.bonus_eligible = 'N') t
    set t.bonus = 0
11 сен 12, 01:46    [13143366]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54794

Мистер
Он на 100% идентичен приведенному выше UPDATE FROM?

Если я правильно понимаю логику этого UPDATE FROM, то - да.

Posted via ActualForum NNTP Server 1.5

11 сен 12, 12:29    [13145077]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
Росгоснанораспилтрест
Member [заблокирован]

Откуда: Главпилорама
Сообщений: 2421
Dimitry Sibiryakov
Росгоснанораспилтрест
Помоги перевести в Merge. Я не допёр.

А в чём проблема-то?
MERGE INTO table_1 t1
USING (тут большой селект с кучей джойнов и прочей ботвой) sq
ON t1.id = sq.id AND t1.date BETWEEN sq.date1 AND sq.date2
WHEN MATCHED THEN UPDATE SET field1 = sq.field1


М-да, я видимо эпично протупил и недоRTFMил. Ну, завтра проверю, как оно работает. Спасибо, пиво куда?
11 сен 12, 22:37    [13148861]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
Росгоснанораспилтрест
Member [заблокирован]

Откуда: Главпилорама
Сообщений: 2421
V&N
oracle
 update (select bonus 
           from employee_bonus b 
          inner join employees e on b.employee_id = e.employee_id 
          where e.bonus_eligible = 'N') t
    set t.bonus = 0


Так там не получилось. Пробовал.
11 сен 12, 22:39    [13148866]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
Victor Metelitsa
Member

Откуда: Тюмень
Сообщений: 2559
  update (
    select bonus 
    from employee_bonus b 
      inner join employees e on b.employee_id = e.employee_id 
    where e.bonus_eligible = 'N') t
  set t.bonus = 0;

  update employee_bonus t
  set t.bonus = 0
  where exists (
    select * 
    from employees e 
    where t.employee_id = e.employee_id 
      and e.bonus_eligible = 'N'
    );

  merge into (select * employee_bonus) t
  using (select * 
    from employees e 
    where e.bonus_eligible = 'N') q
  on t.employee_id = q.employee_id 
  when matched then update set t.bonus  = 0;
12 сен 12, 00:52    [13149186]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
FreemanZAV
Member

Откуда:
Сообщений: 2434
Dimitry Sibiryakov
Росгоснанораспилтрест
Приходится извращаться с анонимными PL/SQL блоками...

Это общая судьба нечитателей. Они знают все извращения, но не стандартный запрос MERGE.


Одно я только не пойму, почему в oracle не реализовали MERGE с для view с instead of триггерами.
13 сен 12, 13:36    [13157528]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54794

FreemanZAV
почему в oracle не реализовали MERGE с для view с instead of триггерами.

Индусы, что с них возьмёшь...

Posted via ActualForum NNTP Server 1.5

13 сен 12, 14:03    [13157761]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
FreemanZAV
Member

Откуда:
Сообщений: 2434
Dimitry Sibiryakov
FreemanZAV
почему в oracle не реализовали MERGE с для view с instead of триггерами.

Индусы, что с них возьмёшь...

Откуда у индусов такая паталогическая ненависть к instead of триггерам. MERGE ведь не единственный баг.
13 сен 12, 14:07    [13157785]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
йоксель
Guest
большой недостаток PostgreSQL - он позволяет вложенные WITH (т.е. стартовать вложенный селект с WITH) примерно так
WITH RECURSIVE a  AS (
 SELECT ....
UNION ALL
 (WITH foo AS (SELECT * FROM a WHERE .... LIMIT 1)
   SELECT c.*,... FROM c JOIN foo  ON .... WHERE ... LIMIT 13 --1 foo
   UNION ALL 
   SELECT d.*,... FROM d JOIN foo ON .... WHERE ... LIMIT 7 --2 foo
   [UNION ALL ]--n foo => де -факто - множественный рекурсивный член Union-a
 )
)
SELECT * FROM a;

- т.е. крайне удобно, как оказалось.

от оракла ничего вразумительного на эту тему добиться мне(ну да, руки видимо плохо растут) не удаётся, там жестко обиваются от попытки вложенного with.
26 сен 12, 13:32    [13225124]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
ОКТОГЕН
Member

Откуда:
Сообщений: 2498
йоксель
большой недостаток PostgreSQL - он позволяет вложенные WITH (т.е. стартовать вложенный селект с WITH) примерно так
WITH RECURSIVE a  AS (
 SELECT ....
UNION ALL
 (WITH foo AS (SELECT * FROM a WHERE .... LIMIT 1)
   SELECT c.*,... FROM c JOIN foo  ON .... WHERE ... LIMIT 13 --1 foo
   UNION ALL 
   SELECT d.*,... FROM d JOIN foo ON .... WHERE ... LIMIT 7 --2 foo
   [UNION ALL ]--n foo => де -факто - множественный рекурсивный член Union-a
 )
)
SELECT * FROM a;

- т.е. крайне удобно, как оказалось.

от оракла ничего вразумительного на эту тему добиться мне(ну да, руки видимо плохо растут) не удаётся, там жестко обиваются от попытки вложенного with.

RTFM!
CONNECT_BY!
5 окт 12, 10:50    [13272136]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
йоксель
Guest
ОКТОГЕН
йоксель
<...>
- т.е. крайне удобно, как оказалось.

от оракла ничего вразумительного на эту тему добиться мне(ну да, руки видимо плохо растут) не удаётся, там жестко обиваются от попытки вложенного with.

RTFM!
CONNECT_BY!
ты, эта, ты не мудри, да, -- ты пальцем покажы(сс)

а то такое невразумительное <кхмммм> на оракле нарисовали - без матюков не читается
5 окт 12, 22:57    [13276774]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
трепач
Member [заблокирован]

Откуда:
Сообщений: 60
йоксель
большой недостаток PostgreSQL - он позволяет вложенные WITH (т.е. стартовать вложенный селект с WITH) примерно так
WITH RECURSIVE a  AS (
 SELECT ....
UNION ALL
 (WITH foo AS (SELECT * FROM a WHERE .... LIMIT 1)
   SELECT c.*,... FROM c JOIN foo  ON .... WHERE ... LIMIT 13 --1 foo
   UNION ALL 
   SELECT d.*,... FROM d JOIN foo ON .... WHERE ... LIMIT 7 --2 foo
   [UNION ALL ]--n foo => де -факто - множественный рекурсивный член Union-a
 )
)
SELECT * FROM a;

- т.е. крайне удобно, как оказалось.

от оракла ничего вразумительного на эту тему добиться мне(ну да, руки видимо плохо растут) не удаётся, там жестко обиваются от попытки вложенного with.


Чего тебе не удалось добиться, родной?
Ты документацию читать не пробовал?
6 окт 12, 14:36    [13277624]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
йоксель
Guest
трепач,
ты не трепись, родной, ты пальцем покажы(с)
скрипты по ссылкам, там можно и сравнить
а на доку я и тебя могу послать, ты ж от этого не поумнеешь

(таки я пробовал и читать и писать, и ора про ограничения синтаксиса получать, и моё резюме - оракел, как стройная синтаксически целостная машинка сосёт у постгреса. и причмокивает. в части того же with, например, ара)
6 окт 12, 15:55    [13277708]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
FreemanZAV
Member

Откуда:
Сообщений: 2434
йоксель
(таки я пробовал и читать и писать, и ора про ограничения синтаксиса получать, и моё резюме - оракел, как стройная синтаксически целостная машинка сосёт у постгреса. и причмокивает. в части того же with, например, ара)


Чтож потгрес никак merge не реализует?
6 окт 12, 21:57    [13278642]     Ответить | Цитировать Сообщить модератору
 Re: Недостатки PostrgeSQL  [new]
трепач
Member [заблокирован]

Откуда:
Сообщений: 60
йоксель
скрипты по ссылкам, там можно и сравнить
а на доку я и тебя могу послать, ты ж от этого не поумнеешь


Понятно...
Чукча ж нечитатель...
Ты прочел и ничего не понял.
В таком случае тебе уже ничто не поможет.
6 окт 12, 23:03    [13278875]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4   вперед  Ctrl      все
Все форумы / Сравнение СУБД Ответить