我正在尝试创建一个列表,在论坛上显示我的所有类别。显示类别名称,带有ID和计数,统计附加到该类别的线程数。SQL计数器和返回者,将结果加倍
它可以很好地工作,但是它会打印两次结果。
这是SQL
SELECT categories.category_name, threads.thread_category_id, COUNT(*)
AS 'threadCount' FROM threads
INNER JOIN categories ON categories.category_id = threads.thread_category_id
GROUP BY categories.category_name, threads.thread_category_id
下面是结果
正如你所看到的,它打印同样的事情两次,它should't。
编辑:这里是ASP。
<asp:Repeater ID="categories" runat="server">
<HeaderTemplate>
<table id="kategorier" cellspacing="0">
<tr>
<td class="head">Name</td>
<td class="head" style="width:70px">Number of Threads</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td class="item"><a href="Kategori.aspx?id=<%# Eval("thread_category_id") %>"><%# Eval("category_name") %> - ID: <%# Eval("thread_category_id")%></a></td>
<td class="item" style="text-align:right"><%# Eval("threadCount") %></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
当你在上面直接在MySQL执行该查询,确实有重新调整的重复行? – 2013-03-06 12:57:41
我不这样做,当我在查询运行/构建器上运行它时,它不会重复。 – 2013-03-06 12:59:44
所以问题不在于查询,而是在asp代码上。 – 2013-03-06 13:00:14