Java SQL随机特征

Java SQL随机特征,java,sql,sqlite,Java,Sql,Sqlite,您好,我正在使用netbeans创建这个测验软件。我已经决定使用sqlite。因此,每当我单击“开始”按钮时,程序就会从数据库中随机提取一行问题,并将其显示在文本区域中。问题是,有时它会重复同一个问题,因为它只是随机的。我希望我的问题是随机的,但每个问题都是唯一的,不要重复两次。我想限制5个问题,在这之后程序应该结束测验并显示一条消息。需要帮助,我是这方面的初学者。您可以这样使用: String show = "SELECT * FROM car ORDER BY RANDOM() LIMIT

您好,我正在使用netbeans创建这个测验软件。我已经决定使用sqlite。因此,每当我单击“开始”按钮时,程序就会从数据库中随机提取一行问题,并将其显示在文本区域中。问题是,有时它会重复同一个问题,因为它只是随机的。我希望我的问题是随机的,但每个问题都是唯一的,不要重复两次。我想限制5个问题,在这之后程序应该结束测验并显示一条消息。需要帮助,我是这方面的初学者。

您可以这样使用:

String show = "SELECT * FROM car ORDER BY RANDOM() LIMIT 4";

也许你可以尝试添加另一列,其中的数字从1到5,或者你想要多少个问题,然后你可以将你的问题添加到每个整数中

现在你要做的就是生成一个像这样的唯一数字

以及选择问题,其中number=(生成的编号)


希望这有帮助。

您可以使用
DISTINCT
关键字确保结果集中没有重复的结果

像这样

....WHERE NOT (name = 'Paul' AND city = 'London')

重复是不一样的结果。整体重复,例如,当他们尝试获取另一个5个问题时,他们得到的问题与之前的问题相同。问题不在于表中的行重复,而是在多次运行查询时返回相同的行。是的,先生,我得到了,您能获得用户单击“重试”的运行时间计数吗?然后您可以使用
WHERE NOT
子句并检查前面在“选择查询”中的问题ID。@JoakimDanielson,不是你。简单的解决方案是跟踪java中提出的问题,然后多次提问,直到有5个新问题出现堆栈溢出!为了帮助其他有相同问题的用户找到答案,请选择更具体的标题。此外,请使用适当的大写字母和多个合理的段落,使您的问题更容易为可能有答案的人阅读。
SELECT DISTINCT * FROM car ORDER BY RAND() LIMIT 4;