Я пытаюсь выбрать несколько полей, один из которых должен быть массивом с каждым элементом массива, содержащим значения два. Каждый элемент массива должен содержать имя (изменяющийся символ) и идентификатор (числовой). Я знаю, как вернуть массив одиночных значений (используя ключевое слово ARRAY
), но я не уверен, как вернуть массив объекта, который сам по себе содержит два значения.
Запрос похож на
SELECT
t.field1,
t.field2,
ARRAY(--with each element containing two values i.e. {'TheName', 1 })
FROM MyTable t
Я читал, что одним из способов сделать это является выбор значений в тип, а затем создание массива этого типа. Проблема в том, что остальная часть функции уже возвращает тип (что означает, что у меня были бы вложенные типы - это нормально? Если да, то как бы вы прочитали эти данные обратно в коде приложения, то есть с поставщиком данных .Net, таким как NPGSQL?)
Любая помощь очень ценится.