2012-04-02 4 views
0

Я хочу знать, есть ли способ удалить дубликаты из моего оператора select в его собственном коде.Android sqlite select withour duplicate id

Пример:

у меня есть:

SELECT gl.genre_id , gl.title FROM genre_lang AS gl LEFT JOIN genres AS g ON (gl.genre_id=g.genre_id) WHERE (gl.lang_code='es_ES' OR gl.lang_code='en_US') ORDER BY gl.title

и мой результат что-то вроде этого:

1  Movies 
2  Sport 
3  Theathre 
3  Drbrbrbr (it should be theathre in spanish) 
5  Music 

и т.д., а также то, что я хочу добиться того, чтобы показать Theathre только на английском/испанском?

Есть ли способ, которым я могу достичь этого, используя sqlite?

ответ

2

используйте DISTINCT в своем запросе, чтобы выбрать только не повторяющиеся записи.

SELECT gl.genre_id , gl.title FROM genre_lang AS gl LEFT JOIN genres AS g ON 
(gl.genre_id=g.genre_id) WHERE (gl.lang_code='es_ES' OR gl.lang_code='en_US' 
AND gl.genre_id IN (SELECT DISTINCT gl.genre_id FROM genre_lang)) 
ORDER BY gl.title 
+0

на самом деле я пытался это раньше, и это не было working..but после внесения некоторых изменений он теперь работает правильно ... так что спасибо большое! –

+0

приветствую :) – waqaslam

1

Попробуйте SELECT distinct gl.genre_id , gl.title FROM genre_lang AS gl LEFT JOIN genres AS g ON (gl.genre_id=g.genre_id) WHERE (gl.lang_code='es_ES' OR gl.lang_code='en_US') ORDER BY gl.title