在我的 mysql 表中,contact
列要么为空,要么有日期。
$sql = "SELECT * FROM cars WHERE eidos='AETOS' order by contact asc";
我的目标是在顶部显示较近的联系
日期。
目前,它显示了顶部没有日期的所有行,最后那些具有联系人
日期的行按升序显示,较小的日期显示在顶部。
如何在顶部显示以升序排列 contact
日期的行,后跟空行?
最佳答案
您可以在 ORDER BY
语句中使用多个条件。像这样的事情:
SELECT *
FROM Cars
WHERE eidos='AETOS'
ORDER BY contact is null, contact asc
<小时/>
编辑 - 如果值不是 null
,而只是一个空字符串,您可以通过将 contact is null'
更改为 'contact = 来实现此目的''
。如果您不知道,您可以随时将 coalesce
包裹起来:
SELECT *
FROM Cars
WHERE eidos='AETOS'
ORDER BY COALESCE(id,'') = '', contact asc
关于php - 修改 mySQL 查询以在使用 ASC 时在末尾显示空行,而不是在顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23621338/