
Vladislav
24.12.2017
17:26:29
стой, а он мускуль юзает?

Arky
24.12.2017
17:26:34
нет
postgres

Vladislav
24.12.2017
17:26:50
аааа

Google

Vladislav
24.12.2017
17:26:51
тогда все
а то я думал что он тебе сказал искать это в мускуле)
тогда ищи
там есть статья "интродакшн в jsonb"

Stanislav
24.12.2017
17:27:11
собираю из кубиков слово "счастье"

Sergey
24.12.2017
17:27:45
ну то есть если у тебя вполне стандартные запросы (а судя по всему так оно и есть) - ты найдешь готовые штуки

Stanislav
24.12.2017
17:28:20
окей, буду смотреть-читать сейчас

Vladislav
24.12.2017
17:28:21
:>
крч jsonb это тот дже джсон только в бинарном виде, немного сжат

Stanislav
24.12.2017
17:28:21
всем спасибо

Vladislav
24.12.2017
17:28:23
поняв?
а nosql там о том, что типа поле содержит джсон докуметн.

Google

Vladislav
24.12.2017
17:28:54
представь что это обычный джсон
и все
и иди работать

Arky
24.12.2017
17:30:15
Только я не понимаю что будет хранить этот Jsonb (

Vladislav
24.12.2017
17:31:14
бл, вот у тебя есть массив файликов
[{"kozel": "/usl/gsfsdg/lol.png"}, {....}]
правильно?

Arky
24.12.2017
17:31:36
Да

Vladislav
24.12.2017
17:32:14
оно так его и покладет в базу данных, только в бинарном формате, чтобы там сжать его. но когда ты сделаешь
$message->getAttachments() тебе прийдет асоц массив
где 'kozel' => 'usr/fsdfsdf/lol.png'
ну крч оно сериализирует массив/обьект и кладет в бд, а когда достает - превращает обратно
вот у тебя массив файликов
отдай ему массив setAttachemnts(SOME ARRAY PUT HERE)
и забирать будешь тоже массив
путей к файликам ))

Arky
24.12.2017
17:33:59
Все началось с того что мне надо получить юзеров, сообщения, и атачменты в одном запросе с пагинацией)
Не понимаю как jsonb мне в этом поможет)

Sergey
24.12.2017
17:37:03
желательно картинкой
а там может до тебя дойдет почему jsonb в этом случае решает проблему (так проще ибо нам в целом этого достаточно по требованиям а разбираться со склейкой двух выборок ой как не хочу)

Arky
24.12.2017
17:38:03
В том что пагинация не поддерживает два FROM или два запроса)

Google

Sergey
24.12.2017
17:38:20

Arky
24.12.2017
17:39:15
нет
И в том что джойны юзать нельзя если связь не one to one)

Sergey
24.12.2017
17:39:26
я так понял что ты даже не пытался воспроизвести то о чем тебе писали

Arky
24.12.2017
17:39:59
Я пытался все, но скилла не хватает )

Vladislav
24.12.2017
17:42:29

Sergey
24.12.2017
17:42:43
http://sqlfiddle.com/#!9/f1bf6e/2
объясни почему пагинация в этом случае "работает неверно" и в чем это выражается
ну можно сделать же disctict или group by
нельзя. точнее не поможет. Ты же джойн делаешь не для фильтрации а тебе данные надо забрать. Ну то есть в теории в postgres через какой aggr_json можно замутить но сам понимаешь какой это кастыль)

Vladislav
24.12.2017
17:49:28
ааааа
тогда да

Sergey
24.12.2017
17:49:36
стой
дай он попробует угадать)
@Eraice короч, посмотри на запрос, посмотри что он возвращает, и теперь скажи почему "это работает неверно"?

Vladislav
24.12.2017
17:51:04
так + N запросов на getFile() и будет работать)))

Sergey
24.12.2017
17:51:10
тогда да
коварная бага... как-то вечероа на отладку потратили пока догадались...

Google

Sergey
24.12.2017
17:51:41
а +n запросов не вариант

Vladislav
24.12.2017
17:52:08
ну ты получил N сообщений а потом еще foreach $m->getFiles() и он будет счастлив

Sergey
24.12.2017
17:52:23

Vladislav
24.12.2017
17:52:33
главное чтобы Арки был счастлив
праздники же

Sergey
24.12.2017
17:53:10
предположим что у нас требования - выбирать по 100 сообщений на "страницу" и что бы в итоге было менее 10-ти запросов на http запрос

Vladislav
24.12.2017
17:53:55
та я понял)
ну два запроса ок. 1 пагинация + 2 все файлы с сообщений)

Admin
ERROR: S client not available

Vladislav
24.12.2017
17:54:25
ну или json

Sergey
24.12.2017
17:59:03
если бы нужно было управление аттачментами - пришлось бы лепить application-level джойн
а так... jsonb в целом свое дело сделает

Vladislav
24.12.2017
17:59:31
ну в вк ограничение 10 файликов было
а какое управление? удалить, добавить, редактировать?

Sergey
24.12.2017
18:04:02
а еще есть некрасивые вопросы со сборкой мусора...

Arky
24.12.2017
18:20:32

Vladislav
24.12.2017
18:21:34
ай
я тоже уже больше не могу
крч все прийдет с опытом. иди работай)

Google

Sergey
24.12.2017
18:25:16
ты как бы близко... но почему они дублируются?
и почему это влияет на пагинацию?
p.s. неужели таааак сложно гуглить... или реально такая большая проблема сформулировать что-то типа "one-to-many pagination problems"
есть столько вариантов... и проблем и решений..

Sergey
24.12.2017
18:27:42
блин
я скоро забаню его

Sergey
24.12.2017
18:27:47
за пару вечеров можно узнать о пагинации в целом вообще все что нужно для безбедной жизни

Sergey
24.12.2017
18:27:51
подзаебало уже разжевывание в чате
элементарных вещей
идите в личку

Sergey
24.12.2017
18:28:43
нет уж, в личку не хочу... лучше просто буду молчать
и перестану помогать
p.s. я даже не уверен что я чем-то помогаю( возможно даже хуже делаю...

Arky
24.12.2017
18:30:10

Sergey
24.12.2017
18:30:52
Ну проект ползет благодаря этому )
чувак имей совесть просто. если тебе помогли, это не значит что нужно садиться на шею и вместо гугла вбивать вопрос в чатик в надежде что тебе тут будут помогать с радостью

Arky
24.12.2017
18:33:06

Vladislav
24.12.2017
18:34:25
ты про base64 не гуглил даже

Arky
24.12.2017
18:35:56
гуглил :s base64 symfony - там бандлы одни

Vladislav
24.12.2017
18:36:11
а другой вариант