在Rails ActiveRecord中,当我执行类似event_instances.order(:created_at)
的操作而没有指定任何订单时,哪个订单是默认DESC
或ASC
?
提前致谢。
答案 0 :(得分:3)
根据user manuals for rails,当您指定了一个符号时,排序设置为ASC
,此时指定了由数据库启动设置的字符串,默认顺序:
User.order(:name)
=> SELECT "users".* FROM "users" ORDER BY "users"."name" ASC
User.order('name')
=> SELECT "users".* FROM "users" ORDER BY name
在DB中对订单进行排序:
ASC订单是默认订单。
默认为升序;这可以使用ASC关键字明确指定。
如果既未指定ASC或DESC,则默认情况下行按升序排序(较小的值为先)。
因此,对于所有主要数据库,dafault订单为ASC