You can't use `ORDER BY` with `VALUES`, although I think that if the outer statement is purely `VALUES` (and not a compound statement, etc) then the order ought to be guaranteed in that case (if it isn't, this is a feature suggestion to change this). But in the case you have, that is not needed since you can instead write: `VALUES (1,5), (2,6), (3,1)` But as far as I know, column names are not guaranteed for `VALUES` (and you cannot specify column names with `VALUES` nor can they be specified in a table alias), so would instead need a more complicated code. I do think that `WITH ORDINALITY` would be useful though, mainly for use with recursive CTEs.