2017-02-22 5 views
1

arbeiten, ich habe einige doppelte Zeilen in meiner MySQL-Tabelle, die zu verschiedenen Kategorien gehört, Struktur meinem Tisch wie das ist.Mysql - Wählen Sie verschiedene Spalte mit Spalte id Abfrage nicht

sample_table 
----------------------- 
id | title | category 
----------------------- 
1 |item 1 | category 1 
2 |item 1 | category 2 
3 |item 1 | category 3 
4 |item 2 | category 1 
5 |item 2 | category 3 

mein Problem ist, ich verschiedene Titelspalte von meinem Tisch zusammen mit ihren id will, habe ich versucht select distinct title from sample_table, gibt es zwei Reihen, aber wenn ich select distinct title , id from sample_table versuchen gibt es alle 5 Reihen.

Nun mein Problem ist, ich verschiedene Titel mit ihrem IDs aus der Tabelle d.h 2 Reihen mit ihren ids will.

Antwort

1

Verwendung Gruppe von

select id,title from sample_table group by title 
+0

das ist, was ich war vermisse, danke weily – parvez

+0

danke für accpet die antwort – denny

+0

Da ID ist nicht in der Gruppe nach Liste, würde diese Abfrage in MySQL v5.7.5 oder höher abgelehnt werden, es sei denn, Sie wählen eine spezielle Setup-Konfiguration, siehe https://dev.mysql.com/doc/refman/5.7/en/group-by-handling.html –

1

Verwenden wählen stattdessen mit einer Gruppe, die durch Anweisung wie folgt aus:

select title, group_concat(id separator ' ') as ids 
from sample_table 
group by title; 

es 2 Zeilen wie das zurück:

title ids 
item1 1 2 3 
item2 4 5 
Verwandte Themen