WITH arr AS ( SELECT ARRAY[11, 22, 33, 44, 55] AS qwe ) SELECT ARRAY[ qwe[array_length(qwe, 1)-1], qwe[array_length(qwe, 1)] ] FROM arr; В подзапросе мы получаем оригинальный массив. Это тот из которого нужно достать последние два элемента. Затем возвращаем новый массив где: Первый элемент нового массива это qwe[array_length(qwe, 1)-1] […]
Архивы по дням: 07.12.2022
Переворот массива подзапросами в PostgreSQL SELECT ARRAY(SELECT array_item FROM unnest(ARRAY[1, 2, 3, 4, 5]) WITH ORDINALITY AS t(array_item, position) ORDER BY position DESC); или SELECT ARRAY(SELECT array_item FROM unnest( ТВОЙ_МАССИВ ) WITH ORDINALITY AS t(array_item, position) ORDER BY position DESC); Как отзеркалить массив? Чтобы не писать отдельную функцию, достаточно добавить […]
Представим, что у нас есть строка доменного имени и мы хотим получить из неё все записи, которые находятся между строчками: SELECT * FROM unnest(string_to_array('http://www.worcestergold.org', '.')); Но мы хотим получить не один столбец в таблице, а два. Второй должен содержать последовательную нумерацию частей после разделения строки на элементы массива. Для […]