按 ID 分组并显示来自 mysql 的所有结果


Group by ID and Show all results from mysql

我有 2 个表

tabcats - Cat_Id, Cat_Name
tabnews - News_Id, News_Name, Cat_Id

所以我正在尝试对数据库进行选择并返回所有结果,但使用

Group by Cat_Id

所以我的结果应该是

假设我有 3 个类别和 5 个新闻

结果

    Cat_Name 1

  • News_Name (1)
  • News_Name (2)

    Cat_Name 2

  • News_Name (3)
  • News_Name (4)

    Cat_Name 3

  • News_Name (5)

我读了一些关于使用LEFT OUTER JOIN的东西,但我不清楚。

首先,你需要清楚自己。我以为你试图做的是选择一些最新消息,不是吗?尝试与此类似的查询:以下查询查找 Comp. Sci 部门提供的每门课程的课程 ID、学期、年份和标题

    select section.course_id, semester, year, title from section, course where section.course_id = course.course_id  and dept_name = ‘Comp. Sci.' 

订购可以按如下方式完成:

return(mysql_query("SELECT  * FROM tabNews GROUP BY news_id DESC LIMIT *counts*"));
这是

列出所有新闻以及猫名,按猫名排序,后跟新闻名称。

SELECT News_Name,Cat_name from tabNews n left join tabCat c on n.cat_id=c.cat_id 
ORDER BY c.cat_name,n.news_name