是否有默认的ORDER BY值?

时间:2013-02-11 02:07:55

标签: mysql

我有一个动态的mysql查询,ORDER BY部分被硬编码到查询中。

问题是,我不知道每个查询是否都有ORDER BY,也不知道哪些列可供订购。

我可以写一个默认值,以便我可以使用

if (empty($order)){$order = "default_value"}

$query = "select ...... ORDER BY $order"

2 个答案:

答案 0 :(得分:4)

查询结果没有默认顺序。如果未显式指定ORDER BY子句,则数据顺序未定义。您只能指定ASC DESC和一些列。

答案 1 :(得分:2)

如果你不确定订单,为什么不把它作为条件句呢?

$order_by = empty($order) ? "" : "ORDER BY " . $order

$query = "select ...... $order_by"