Size: a a a

pgsql – PostgreSQL

2020 July 17

AM

Alexey Mihaylov in pgsql – PostgreSQL
Привет,

Ребят, как преобразовать значение строки в название колонки без crosstab ?
источник

AM

Alexey Mihaylov in pgsql – PostgreSQL
Например, есть таблица:

id   field       translation
1   name       имя
1   hello        привет

Нужно, чтобы стало:

id name hello
1   имя    привет
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Alexey Mihaylov
Привет,

Ребят, как преобразовать значение строки в название колонки без crosstab ?
Занимались бы Вы оформлением результатов на клиенте...
источник

AM

Alexey Mihaylov in pgsql – PostgreSQL
Должен же быть способ - это относительно простая задача...
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Alexey Mihaylov
Должен же быть способ - это относительно простая задача...
Нет, это совсем не простая задача (т.к. в ней есть явная попытка нарушить основы работы RDBMS). ;)
И, более того, без динамического SQL способа просто нет.
источник

AM

Alexey Mihaylov in pgsql – PostgreSQL
Yaroslav Schekin
Нет, это совсем не простая задача (т.к. в ней есть явная попытка нарушить основы работы RDBMS). ;)
И, более того, без динамического SQL способа просто нет.
А можно сделать так, чтобы при преобразованиии такой таблицы в json было так:

{
'id' : 1, 'name':'имя', 'hello': 'привет'
}

?
источник

AM

Alexey Mihaylov in pgsql – PostgreSQL
🥺
источник

Е

Елена in pgsql – PostgreSQL
Alexey Mihaylov
А можно сделать так, чтобы при преобразованиии такой таблицы в json было так:

{
'id' : 1, 'name':'имя', 'hello': 'привет'
}

?
json_build_object
источник

AM

Alexey Mihaylov in pgsql – PostgreSQL
Елена
json_build_object
Спасибо, сейчас попробую.
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Alexey Mihaylov
А можно сделать так, чтобы при преобразованиии такой таблицы в json было так:

{
'id' : 1, 'name':'имя', 'hello': 'привет'
}

?
Так, что ли?
WITH a_table(id, field, translation) AS (
VALUES
(1, 'name', 'имя'),
(1, 'hello', 'привет'),
(1, 'bye', 'пока'),
(2, 'something', 'что-то'),
(2, 'nothing', 'ничего'),
(3, 'so', 'итак')
)
SELECT id, jsonb_build_object('id', id) || jsonb_object_agg(field, translation)
 FROM a_table
GROUP BY id;
источник

AM

Alexey Mihaylov in pgsql – PostgreSQL
Yaroslav Schekin
Так, что ли?
WITH a_table(id, field, translation) AS (
VALUES
(1, 'name', 'имя'),
(1, 'hello', 'привет'),
(1, 'bye', 'пока'),
(2, 'something', 'что-то'),
(2, 'nothing', 'ничего'),
(3, 'so', 'итак')
)
SELECT id, jsonb_build_object('id', id) || jsonb_object_agg(field, translation)
 FROM a_table
GROUP BY id;
Абсолютно правильно.
источник

AM

Alexey Mihaylov in pgsql – PostgreSQL
Только там ещё какой-то jsonb_object_agg есть.
источник

AM

Alexey Mihaylov in pgsql – PostgreSQL
Надо будет почитать.
источник

Ð

Ð in pgsql – PostgreSQL
чето таймскаль жмет слабовато, всего на 20-50%
источник

Ð

Ð in pgsql – PostgreSQL
нет, нормальн конечно, но я почему-то ожидал раз в 10
источник

N

Nikita in pgsql – PostgreSQL
Всем привет. Кто хорошо!!! шарит jpql и может объяснить как делать некоторые query? Управиться можно за час максимум. Естественно с меня награда. Пишите в директ кому интересно, все обсудим.  Спасибо за внимание.
источник
2020 July 18

AI

Alex Ignatov in pgsql – PostgreSQL
Nikita
Всем привет. Кто хорошо!!! шарит jpql и может объяснить как делать некоторые query? Управиться можно за час максимум. Естественно с меня награда. Пишите в директ кому интересно, все обсудим.  Спасибо за внимание.
Если управиться можно за час зачем пишете ?
источник

JD

Jim Di in pgsql – PostgreSQL
выглядит как типичное описание задания на фл :)

ну тут надо вот, но хз что, но там легко, за час бы сделал и сам, но чот не сделал и вот тебе 1000 рублей, хотя может за 500 сделаем? а вообще цена в лс)))) тз не буду писать, догадайтесь сами что надо, вытягивая по предложению из меня


facepalm
источник

N

Nikita in pgsql – PostgreSQL
Можно сделать менее чем за час если хорошо шаришь jpql. Я jpql знаю плохо. Поэтому и пишу.
источник

IZ

Ilia Zviagin in pgsql – PostgreSQL
Artem Nemtsev
Проще: как просуммировать группу сумм?
Охватывающий запрос с агрегированием и с group by или без.

Можно использовать with.
источник