Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我为一个表运行一个 select 语句。我在 DATE 类型的字段上执行 ORDER BY。该字段有 3 个可能的值:
日期>=今天
一个日期<今天
空值
我希望它将 no2 视为 null,以便首先给我带来 no1 结果,然后是所有其他结果,无论它们的值如何,因为我接下来运行第二个 ORDER BY。我尝试了任何事情都没有成功,这似乎超出了我的知识范围。谢谢你读我!
对于 SQL Server:
order by case when mydate >= getdate() then mydate else null end
您也可以在 mysql 中使用 CASE 语句编写 ORDER BY 语句,或者您也可以在 SELECT 子句中使用别名编写 CASE 语句并按顺序使用它。我无法理解您真正想要什么,如果您可以提供一些示例数据,那么我们可能会帮助您处理查询本身。