0

当我想在 MySQL 中按条件排序查询时,如何避免文件排序?

ORDER BY (videos_count > 0) DESC, name

has_videos缓存布尔列和计数会更好吗?

4

2 回答 2

1

如何将查询分成两部分,首先是包含至少一个视频的部分,然后(仅在需要时)其余部分:

select *  from video_table  
where video_count > 0
order by name

如果您需要超越这些:

select *  from video_table  
where video_count = 0
order by name
于 2012-04-10T02:24:41.427 回答
0

一般来说,为了避免文件排序,您通常需要点击索引 - 为了点击索引,您通常需要对裸列值进行排序(因为通常为列创建索引)。

于 2012-04-10T02:00:36.337 回答