2013-08-26 268 views
1

我想从数据库中选择,但因为数据库作为重复的数据和每个数据中的项目名称可能会或可能不会被复制。请看下面的例子来了解更多select语句不包含重复数据

表鞋

shoeid pid Name 
1   1 green 
2   1 green 
3   2  red 
4   3  red 

这就是一个简单的例子。

如何从此表中选择Namepid但我不想看到任何重复的数字或名称。例如我不想看到red或​​或不管我在数据库中有多少颜色。 请记住我在数据库中有超过100种颜色。同样的事情适用于pid

回答

0

使用GROUP BY

select * from `yourtable` group by `pid`,`Name` 
+0

对我来说这没有工作@ User016 –

0
SELECT DISTINCT Name FROM shoe 

此查询得到的唯一值,如果你想在那里你可以通过

SELECT DISTINCT Name FROM shoe WHERE your_key = 'your_key_val' 
0

用它试试这个:

SELECT DISTINCT Name FROM table_name; 

,或者如果你想在输出最大ID :

SELECT Name, MAX(pid) AS id FROM table_name GROUP BY Name; 

或者如果你想以逗号分隔的ID列表对于名称:

SELECT Name, GROUP_CONCAT(pid) AS id_list FROM table_name GROUP BY Name; 
+1

名称和PID ;-) –

+0

OP不清楚,因为OP不想要任何重复的'数字或名称'而不是'数字和名称' – Omesh

+0

“我如何选择名称和pid “ –