@pgsql

Страница 285 из 1062
Max
28.03.2017
11:58:37
киньте текст запроса

Lulz
28.03.2017
11:59:52
`INSERT INTO one_hour(id_counter, date_time, in_c, out_c) VALUES(1, '2017-01-01 01:00', (SELECT COALESCE(SUM(in_c),0) FROM ten_minute WHERE id_counter = 1 AND (date_time >= '2017-01-01 01:00' AND date_time <= '2017-01-01 01:59')), (SELECT COALESCE(SUM(out_c),0) FROM ten_minute WHERE id_counter = 1 AND (date_time >= '2017-01-01 01:00' AND date_time <= '2017-01-01 01:59'))) ON CONFLICT (id_counter, date_time) DO NOTHING`

не могу не использовать values

потому что мне нужны значения только in_c, out_c из таблицы

Google
Max
28.03.2017
12:01:41
как-то так

INSERT INTO one_hour(id_counter, date_time, in_c, out_c) select * from ( select 1, '2017-01-01 01:00', (SELECT COALESCE(SUM(in_c),0) FROM ten_minute WHERE id_counter = 1 AND (date_time >= '2017-01-01 01:00' AND date_time <= '2017-01-01 01:59')) as in_c, (SELECT COALESCE(SUM(out_c),0) FROM ten_minute WHERE id_counter = 1 AND (date_time >= '2017-01-01 01:00' AND date_time <= '2017-01-01 01:59'))) as out_c ) t where in_c is not null or out_c is not null

lemi
28.03.2017
12:02:28
там где агрегации по идее надо использовать group by having clause

Max
28.03.2017
12:02:35
вродеж можно селекты в селекте

должно работать как написал

ну и COALESCE убрать тогда

lemi
28.03.2017
12:03:49
что то вроде INSERT INTO one_hour(id_counter, date_time, in_c, out_c) select id_counter, date '2017--01-01 01:00', sum(in_c), sum(out_c) from ten_minute WHERE id_counter = 1 AND (date_time >= '2017-01-01 01:00' AND date_time <= '2017-01-01 01:59')) group by id_counter having sum(in_c) > 0 and sum(out_c) > 0 ON CONFLICT (id_counter, date_time) DO NOTHING`

попробовать только надо если я правильно понял то что именно надо

Max
28.03.2017
12:04:27
'2017-01-01 01:00' ПРИВОДИТЕ ЯВНО

капс

Lulz
28.03.2017
12:05:11
блин, немного переработался, как понять явно)

Anatoliy
28.03.2017
12:05:38
''::timestamp

Max
28.03.2017
12:05:40
ну вот когда написано так как написано то работает неявное преобразование

Google
Max
28.03.2017
12:05:52
а явно это или cast

или вот как выше написал коллега

переносимей кастовать

Anatoliy
28.03.2017
12:06:43
постгрес не может понять, что там у вас в строке, т.к. тип не определен. Ему надо подсказать явно

Max
28.03.2017
12:07:26
точнее он все занет просто зоны нет в строке

временной

а не

вру

Lulz
28.03.2017
12:08:28
о понятно, вроде сработало, сейчас протестирую

спасибо за помощь =)

Max
28.03.2017
12:09:05
не за что

Lulz
28.03.2017
12:09:53
а я эту проверку писал в подзапросе

но не сработало

Max
28.03.2017
12:10:02
о только OR на AND наверное надо заменить

где все не nul чтоб было

а то я чет or написал

) t where in_c is not null AND out_c is not null..

Lulz
28.03.2017
12:11:14
да это понял

Anatoliy
28.03.2017
15:58:56
@Komzpa ping

Pavel
28.03.2017
15:59:36
Надо короче сделать бота который как graylist не дает писать первые 3 минуты)

Google
Pavel
28.03.2017
15:59:43
ну или хотя бы 1 минуту

Igor
28.03.2017
15:59:53
или хотя бы никогда

Oleg
28.03.2017
16:00:20
и банит на хрен спамерасов

Darafei
28.03.2017
16:00:48
Oleg а можно выбирать выраения помягче? :)

Quorte
28.03.2017
16:01:12
Oleg
28.03.2017
16:01:35
режет глаз?

Quorte
28.03.2017
16:01:59
режет глаз?
не, просто 90% спамерских сообщений вешают кучу для привлечения внимания

Oleg
28.03.2017
16:02:43
я про помягче спросил у Дарафея

Alex
28.03.2017
16:02:49
Ну тут есть выросшие не только в IRC и привыкшие обстоятельно отвечать так или иначе :)

Darafei
28.03.2017
16:04:11
берите пример с @Bereznyak

Oleg
28.03.2017
16:04:54
возьмем, а где пример?

Степан
28.03.2017
17:42:56
Всем привет. У меня вопрос, возможно ли множественное удаление сделать в постгресе? Я делаю следующее delete from table where (1,2,3,4) in (1,2,3,4,5,6,7,8,9). Вместо цифр в скобках идентификаторы из бд. Бд отвечает что не может такого сделать, есть ли выход?

Igor
28.03.2017
17:44:31
а что подразумевает where (1, 2, 3, 4)?

Степан
28.03.2017
17:45:10
Он вытягивает селектом там идентификаторы тоже.

Ivan
28.03.2017
17:48:00
Тебе надо наверное @>

Вместо in

Igor
28.03.2017
17:48:25
не понял, в чем проблема http://pastebin.ca/3787357 - не?

Степан
28.03.2017
17:48:27
Сейчас попробую.

Теперь такое operator does not exist: bigint @> bigint . Он не может применить к бигинту этот оператор походу.

Ivan
28.03.2017
17:51:05
Подумал у тебя там массивы

Google
Степан
28.03.2017
17:51:48
Я переводил в массивы, он ошибку не пишет, но и не удаляет.

Ivan
28.03.2017
17:53:04
А разверни знак из @> на <@

Admin
ERROR: S client not available

Ivan
28.03.2017
17:53:19
Когда к массивы приведешь

Степан
28.03.2017
17:54:10
Он мне все стер)

Должно же работать таким способом @> ?

Ivan
28.03.2017
18:06:49
contains — true if left array contains right array

но у тебя вроде как наоборот

Степан
28.03.2017
18:07:43
Почему наоборот? Написано что тру если левый содержится в правом.

У меня именно так.

Роман
28.03.2017
18:42:36
Ребят, а подскажите, что лучше для хранения денег использовать — money или numeric?

Alex
28.03.2017
18:59:35
numeric т.к у типа money есть ограничения

например : значения этого типа зависят от региональных стандартов, попытка загрузить данные типа money в базу данных с другим параметром lc_monetary может быть неудачной. Во избежание подобных проблем, прежде чем восстанавливать копию в новую базу данных, убедитесь в том, что параметр lc_monetary в этой базе данных имеет то же значение, что и в исходной.

Oleg
28.03.2017
19:10:03
можно попробовать новую noSQL бд - noMoney

Igor
28.03.2017
21:37:34
Коллеги, patroni ha cluster использует кто?)

Andrew
28.03.2017
22:22:00
народ, как lvcreate собрать раздел использующий блоки сразу на нескольких pv, но только в режиме jbod (а не stripe или mirror)? немного не по теме, но может кто подскажет, чот не могу нагуглить и в мане не вижу...

впрочем postgresql там рядом тоже есть :-)

Andrew
28.03.2017
22:24:39
вот всегда так, напишешь - и решение приходит)

Google
Andrew
28.03.2017
22:24:58
мне достаточно просто в -I большое число указать, сделав страйпы большими

Andrew
28.03.2017
22:27:03
да кучу картинок надо обработать, так будет эффективнее

Igor
28.03.2017
22:29:25
Andrew
28.03.2017
22:30:49
почему ты так решил?.. просто обычный страйп для чтения одной картинки будет несколько дисков дергать и ждать

Igor
28.03.2017
22:31:31
с чего бы это

Andrew
28.03.2017
22:31:45
хочется чтобы картинка целиком в один блок одного диска влезала... или я что-то не так понимаю?

Igor
28.03.2017
22:31:47
разве что страйп одиночный не лежит на 2-х pv

ааааа

ты хочешь сделать размер страйпа больше картинки

Andrew
28.03.2017
22:32:49
да

хм, наверно можно было просто два pv ему указать, и он бы по-ровну между ними том разделил?

Страница 285 из 1062