理解order by

以下SQL对表数据进行随机排序:

select *

  from (select t.*, dbms_random.value() as t_c from mytable t) t

 order by t_c

通过嵌套子查询生成随机数排序列,这里需要用子查询吗?

orderby是对已查询数据列进行排序,可使用查询列别名:

select t.*, dbms_random.value() as t_c from mytable t order by t_c

 oracle随机数生成方法dbms_random.value(),postgresql随机数生成方法random()。

postgresql中列取别名需有as关键字,子查询需有临时表名,而oracle均不需要。

你可能感兴趣的:(by,order)