只根据id在mysql php中出现一个表行

时间:2013-02-25 19:47:36

标签: php mysql

我有一张看起来像这样的表

id            |            itemID        |         catID     |      Title
----------------------------------------------------------------------------
0                           3                       4                Hello
1                           3                       6                Hello
2                           4                       4                Yo
3                           4                       8                Yo
4                           5                       2                Hi
5                           1                       3                What

我想做一个MySQL PHP选择只发生一次itemID。正如您所看到的,它们是相同的项目,只是在不同的类别中。

这就是我试过的

SELECT * FROM Table GROUP BY itemID

这似乎不起作用,它仍然只显示重复。

2 个答案:

答案 0 :(得分:2)

这是你在找什么? http://www.sqlfiddle.com/#!2/5ba87/1

select itemID, Title from test group by itemID;

答案 1 :(得分:0)

就MySQL而言,数据都是唯一的,因为您需要所有列。你必须更具体。

您是否只想要itemID(或其他列)?然后这样说:

select [column] from Table GROUP BY itemID

您想要特定商品ID的最后一个条目吗?然后说:

select * from Table where itemID = 1 ORDER BY id DESC

还是第一个?

select * from Table where itemID = 1 ORDER BY id

如果这些都不是您想要的,那么您可能需要重新构建表格。看起来您需要不同类别的商品。如果是这样,那么您将要将它们拆分为新的连接表,因为项目和类别之间存在多对多关系。我建议阅读数据库规范化,这样你就不会复制数据(例如你的标题)。