MySql 首先按特定字段值排序不起作用

标签 mysql sql-order-by

您好,我有一个新闻页面,我想在顶部显示用户的城市新闻。 例如,这些是按时间降序排列的新闻。

+----------+-----------+-----------------------+
| CityCode | entrytime |      newsheader       |
+----------+-----------+-----------------------+
|       11 |      3800 | great opening         |
|       10 |      3700 | flood alert           |
|       12 |      3600 | new mall              |
|       13 |      3500 | pollution at the city |
|       13 |      3400 | new mayor             |
|       12 |      3300 | house fire            |
|       11 |      3200 | traffic accident      |
|       10 |      3000 | Festival at city      |
+----------+-----------+-----------------------+

我住在城市 12。我想在顶部看到 CityCode=12,然后是类似的其他新闻。

+----------+-----------+-----------------------+
| CityCode | entrytime |      newsheader       |
+----------+-----------+-----------------------+
|       12 |      3600 | new mall              |
|       12 |      3300 | house fire            |
|       11 |      3800 | great opening         |
|       10 |      3700 | flood alert           |
|       13 |      3500 | pollution at the city |
|       13 |      3400 | new mayor             |
|       11 |      3200 | traffic accident      |
|       10 |      3000 | Festival at city      |
+----------+-----------+-----------------------+

我试过了

Select * from news order by FIELD(CityCode,12),entrytime desc

Select * from news order by CityCode=12,entrytime desc 

这些代码不起作用。我用的是mysql 5.5 我怎样才能解决这个问题?谢谢

最佳答案

试试这个:在 FIELD(CityCode,12) 的 order by 子句中添加 desc

Select * from news order by FIELD(CityCode,12) desc,entrytime desc

检查FIELD函数对ORDER BY的限制

Order BY using FIELD function

关于MySql 首先按特定字段值排序不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25863919/

相关文章:

mysql - 从当前状态查询 MySQL 获取总计数

mysql - 如何从 MySQL 查询中排除特定行

sql - 选择唯一的记录并在 rails 中显示为类别标题

mysql - 在 MySQL 中对有序数据对进行排序/排序?

java - 计算 INSERT/ON DUPLICATE KEY UPDATE

php - 如何按用户检索订购的产品并显示它们?使用 SESSION PHP

mysql - sql中每四个小时的平均数据?

sql - GROUP BY忽略属性

MySQL 按组对表进行排序

mysql - 联合查询中的排序错误