2016-07-13 21 views
2

ich diese Abfrage in flexible Suche haben:Wie kann ich von dieser Abfrage Gruppe, dass es pro Eintrag nicht zwei Spalten ist

SELECT 
    {p.pk} AS PK, 
    {year.code} AS year 
FROM {Product AS p 
    LEFT JOIN Year AS y ON {p.yearpk}={year.pk} 
} 
ORDER BY {p.pk} ASC 

Als Ergebnis erhalte ich:

PK | year 
--------------- 
1  | null 
1  | 2016 
2  | null 
2  | 2016 

Wie kann ich Gruppe durch diese mehrere Datensätze in einem wie:

PK | year 
--------------- 
1  | 2016 
2  | 2016 

ich schon versucht habe, mit „GROUP BY {p.pk}“, aber dann der Abfrage nicht gibt mir nicht das Ergebnis, das ich habe oben erwähnt - stattdessen gibt es 2 Datensätze, aber das Jahr ist null statt 2016.

Wie kann ich das lösen?

+0

'SELECT {p.pk}, {Jahr.code} FROM {Produkt als p}, {Jahr als Jahr} wobei {p.yearpk} = {Jahr.pk} ORDER BY {p.pk} ASC' –

Antwort

1

Sie müssen Ihre left join in eine inner join ändern. Das sollte dein Problem lösen.

+0

Versucht und gearbeitet - danke – micu