If you want the order as in you question, you could do something like this:
with numTab as (
select
1 ID
union all select -2
union all select 2
union all select -3
union all select -4
union all select 6
union all select 8
)
select
posNum.ID Positive,
negNum.ID Negative
from
(select
row_number() over(order by ID) rowid,
ID
from numTab where ID > = 0) posNum
full join
(select
row_number() over(order by ID desc) rowid,
ID
from numTab where ID < 0) negNum
on posNum.rowid = negNum.rowid
;
That should do what you required.