【发布时间】:2017-05-15 07:52:51
【问题描述】:
我正在创建一个论坛,我希望将最新主题与其所属的类别并排显示。但是,当某人在同一类别中创建主题两次时,它会显示该类别两次,并在右侧显示不同的主题。
这有点对,但我希望它只显示一个类别。我为此尝试了 SQL SELECT DISTINCT,但它似乎不起作用,谁能告诉我语法是否有问题或问题出在其他地方?
$sql = '
SELECT DISTINCT topics.topic_id, topics.topic_subject, topics.topic_by, categories.cat_id, categories.cat_name, categories.cat_description FROM topics JOIN categories ON topics.topic_cat = categories.cat_id ORDER BY topics.topic_date DESC LIMIT 3
';
另外,我想指出LIMIT 3 的原因是因为这是来自主页,应该只显示 3 个类别。该问题在首页和分类页面都存在。
【问题讨论】:
-
您是否尝试过按不同的 cat_id 进行选择?如果您想将其限制为每个类别一个,那将更有意义
-
你在用什么rdbms?
-
添加一些示例表数据和预期结果 - 以及格式化文本。
-
@FMashiro 我可以试试这个,但是我要把语法改成什么?
-
@Mureinik 我不完全确定,我对此很陌生,但我认为答案是 MariaDB