Сначала все с чётным числом точек, а потом все с тройками.
или перевести в double число с помощью функции и отсортировать.
как перевести в double если точек 2?
так же как отобразить отрезок [0,1) в [0,+бескон)
order by replace(field, ‘.’, ‘’)::integer Так нормально?
не. 1.1.1 будет равно 11.1
https://www.postgresql.org/docs/current/ltree.html ?
А разве ltree не по текстовому представлению меток сортируется?
Блин, да, 1.1.10 будет раньше 1.1.9
да. но в условии по числовому представлению не было заявлено…
Простите. казалось, что по примеру ясно будет, что нужно на выходе
Так? https://dbfiddle.uk/?rdbms=postgres_10&fiddle=b4e52c22b14362f339118ed0daa0e534
попробуйте ORDER BY string_to_array(magic_column, '.')::int[]
Обсуждают сегодня