Я пытаюсь написать оператор удаления, и предложение возврата возвращает идентификаторы как массив объектов как таковой:
[
{simcard_id: 1},
{simcard_id: 2},
{simcard_id: 3},
]
но я хотел бы, чтобы он возвращал массив чисел как таковой:
[1, 2, 3]
Есть ли способ заставить оператор возвращать массив только чисел? Я попробовал несколько агрегатных функций, но продолжаю получать сообщения об ошибках, говорящих о том, что я не могу выполнять функции array_agg в операторе return. Я также пытался сделать это:
RETURNING ARRAY[simcard_id]
Но потом стало просто странно.
Я не лучший в sql, поэтому любая помощь будет принята с благодарностью.
Я знаю, что могу просто отображать значения и возвращать массив чисел, но я хотел бы воспользоваться этой возможностью, чтобы узнать, могу ли я сделать это с помощью sql.
Вот sql-запрос. Он использует библиотеку postgres для nodejs.
const simcardsIds = await sql`
DELETE FROM simcards
WHERE simcard_id = ANY(${sql.array(simcards)})
RETURNING simcard_id
`