如何使用数据库数据随机填充片段

时间:2015-06-13 19:16:03

标签: android android-fragments android-sqlite android-loader

我有一个片段显示从数据库(sqlite)行获取的数据。我现在想要实现的是从数据库中拍摄不同的行,并在按钮点击时填充片段。如果可能的话,我希望随机挑选这一行。我希望我问这个问题吧。提前致谢

1 个答案:

答案 0 :(得分:0)

一种可能的方法是使用随机顺序一次查询所有行并保持光标。然后每次单击该按钮,只需前进光标位置并使用该数据。当您用完行时,您可以再次查询以获取另一个随机游标并重复。

我不确定您的查询代码是什么样的,但您想要的基本上是

SELECT [columns] FROM [table] ORDER BY random();

重要的部分是ORDER BY random()

请注意,此策略不允许第二次显示相同的行数据,除非您耗尽整个光标一次。如果这是不可接受的,那么下一个可能性是每次点击按钮时进行查询并执行以下操作:

SELECT [columns] FROM [table] WHERE _id != [current_item_id] ORDER BY random() LIMIT 1;

无论您的主键列是什么(我的示例使用_id),请使查询排除其值与当前项相同的行。再次按random()排序并限制为1,仅返回1行。