Получить данные Sub с помощью Sub Select в PostgreSQL

Jordash спросил: 13 октября 2017 в 07:08 в: node.js

У меня есть база данных PostgreSQL, которая выглядит следующим образом:

content
id     title      content
1      Home       Welcome to the homepage

-

fields
id    contentID   value
1     1           Field Value 1
2     1           Field Value 2
3     2           Field value in other content

Я пытаюсь написать запрос который объединяет данные для обоих и в конечном итоге выходит с:

[{title: 'Home', content: 'Welcome to the homepage', поля: [{id: 1, contentID: 1, value: 'Значение поля 1'}, {id: 2, contentID: 1, значение: 'Значение поля 2'}]}]

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

let data = await query(`SELECT *, (SELECT array(SELECT * FROM stuff.fields WHERE stuff.fields.contentID=stuff.content.id)) as fields FROM stuff.content`);

Обратите внимание, что stuff - это имя схемы, я новичок в PostgreSQL, но мне нравится его гибкость и скорость передачи данных по сравнению с MySQL, и Я не думаю, что MySQL может сделать что-то подобное.


0 ответов