我正在使用Sqlite3數據庫進行存儲的android應用程序。從sqlite3數據庫中的多個相似記錄的條件選擇
最近我遇到了一個問題,我需要根據我在特定列上的條件從多個相似行中選擇一行。
只是更加具體......
來源的數據:在數據庫
_id | code | language | data
1 | 1 | English | aaa
2 | 1 | French | bbb
3 | 1 | Spanish | ccc
4 | 1 | Portuguse| ddd
5 | 2 | English | eee
6 | 2 | French | fff
7 | 3 | English | ggg
8 | 4 | French | hhh
多個條目可以有相同的編碼值和不同的語言值。
我的條件如下:
我應該有每個代碼值的至少一個記錄。
我必須根據我想要的語言進行搜索。假設如果我把西班牙語作爲語言,我應該得到西班牙語的所有記錄。
如果任何代碼條目沒有給定的語言,那麼我應該得到該代碼的英文輸入。
如果任何代碼條目只有一種語言的記錄,那麼我應該得到該記錄,而不管我給出的語言。
我從上表中預期的結果:
如果我給語言爲西班牙語: -
3 | 1 | Spanish | ccc
5 | 2 | English | eee
7 | 3 | English | ggg
8 | 4 | French | hhh
我應該有1,2,3,4碼值。
與語言西班牙語與代碼1我有西班牙語的記錄,所以它應該來。
與語言西班牙語與代碼2我沒有西班牙語的記錄,所以記錄與代碼2和語言英語應選擇。
代碼3 & 4條記錄只有一個條目,所以這些記錄應該來。
我在網上搜索了很多關於如何在類似的行上操縱這些條件的問題,但我無法得到答案。有人可以幫助我查詢預期結果。
在此先感謝。