从列中以逗号分隔的值获取唯一记录

时间:2016-12-11 07:56:51

标签: android sqlite

我在表格中有以下记录。

Country      |  Values
-------------+-----------------------------
 Fruits      | Apple, orange,Pineapple
 Animals     | Lion, Jaguar
 Foods       | Muffins, Sandwitch
 Cold Fruit  | Water melon, Pineapple

我试图从值列中获取所有记录作为没有任何重复元素的数组。我怎样才能在android中使用sqlite?

截至目前,我正在将值列中的所有记录提取到数组中。然后,我解析逗号分隔值,并将Im添加到新数组,同时过滤重复元素。

1 个答案:

答案 0 :(得分:1)

正确规范化您的数据库:

CountryID Country
--------- ----------
 1        Fruits
 2        Animals
 3        Foods
 4        Cold Fruit

Value       CountryID
----------- ---------
Apple        1
orange       1
Pineapple    1
Lion         2
Jaguar       2
Muffins      3
Sandwitch    3
Water melon  4
Pineapple    4

然后查询变得微不足道:

SELECT DISTINCT Value FROM ValuesTable;