Следният отговор не е агностик на endian и моята формулировка се основава на малък формат на endian...
Можете да преместите битове, като просто умножите (преместване наляво) или разделите (преместване надясно) аргумента на 2 на степен x, където x е броят битове за преместване. например, ако трябва да преместя младшия байт на число (255:11111111) 16 бита наляво, бих изпълнил следната операция:
select 255 * power(2,16) from dual;
-- the result will be (16711680:111111110000000000000000)
обратно, ако искам да преместя стойността 16711680 16 бита надясно, ще изпълня следното:
select 16711680 / power(2,16) from dual;
-- the result will be (255:11111111)