3

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

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

有没有我可以写的默认值,以便我可以使用

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

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

2 回答 2

4

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

于 2013-02-11T02:09:36.757 回答
2

如果您不确定顺序,为什么不将其设为条件子句?

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

$query = "select ...... $order_by"
于 2013-02-11T02:18:03.623 回答