如何显示每个类别的mysql最新条目

时间:2014-02-28 06:52:31

标签: php mysql codeigniter

我们使用CodeIgniter,我们希望通过(published_date)获得6个类别的最新10个条目,然后我们将在视图中显示不同的类别结果。在这里,我们使用6个彩色框来显示每个类别的10个最新条目。我们的SQL表看起来像这样......

- > ci_categories

cat_id | cat_name | cate_slug  | cate_title

- > ci_pages

page_id  | cat_id | page_title  | published_date
--------------------------------------
1    | 1       | Ttl 1       | 2014-02-22 10:22:20
2    | 2       | Ttl 2       | 2014-02-24 11:42:30
3    | 1       | Ttl 3       | 2014-02-26 10:37:21
4    | 3       | Ttl 3       | 2014-02-28 12:40:30

2 个答案:

答案 0 :(得分:0)

尝试此查询..

select category.*,pages.* from ci_categories category join ci_pages pages on (category.cat_id = pages.cat_id) group by pages.cat_id order_by pages.published_date DESC limit 0,10

答案 1 :(得分:0)

SELECT `ci_pages`.`cat_id` AS CAT_ID,
(SELECT `cat_name` FROM `ci_categories` WHERE `ci_categories`.`cat_id` = `ci_pages`.`cat_id`) AS CAT_NAME, 
(SELECT `cat_slug` FROM `ci_categories` WHERE `ci_categories`.`cat_id` = `ci_pages`.`cat_id`) AS CAT_SLUG, 
(SELECT `cat_title` FROM `ci_categories` WHERE `ci_categories`.`cat_id` = `ci_pages`.`cat_id`) AS CAT_TITLE
FROM `ci_pages` 
ORDER BY `ci_pages`.`published_date` DESC 
LIMIT 10;

这会将最后插入的10个值返回到“ci_pages”表中,从“ci_pages”表中获取每个类别的详细信息。现在检查......