| id | title | country |
|---|---|---|
| 1 | The news | zh |
| 2 | the two news | zh |
| 3 | the three news | jp |
| 4 | the four news | jp |
表结构大概如上,是个类似资讯表。现在需要选出指定几个国家的6条资讯,即为指定的几个国家分别选出6条记录来展示。
个人想到用union来一次性选出符合的记录。各位大大是否有更好,高效的方法呢?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
提供一个思路,我个人在实际项目中更倾向于此种方法。
不要什么问题都非得一句SQL搞定问题,这样SQL难以维护,而且也不利于mysql去缓存查询结果。
看你的问题描述更像是要展示特定信息,而且是很可能持续展示同样的查询结构。
http://stackoverflow.com/questions/3800551/select-first-row-in-each-group-by-group
一条SQL执行起来不难,比如这样(可能不完全符合题主的要求):
尽管如此,但我赞同 @AntonyBi 的观点。
如果表关系有些复杂的话,建议不要试图用一条SQL拯救世界。
SQLServer中可以使用ROW_NUMBER()函数实现。
http://stackoverflow.com/questions/12693989/tinymce-html5-placeholder-by-reading-attribute-from-textarea