从Safaris客户端数据库中选择随机行

时间:2010-08-17 08:58:58

标签: sql safari mobile-safari

我正在Safari浏览器中尝试内置的SQL支持,我想通过Javascript选择随机查询。

SELECT * FROM questions ORDER BY random()

返回未授权使用函数:random

请参阅this screenshot

有什么建议吗?

2 个答案:

答案 0 :(得分:3)

使用非随机顺序查询,然后随机播放结果:

tx.executeSql('SELECT * FROM questions',[], function(tx, resultSet) {
    var resultArray = [];

    for(var i=0; i < resultSet.rows.length; i+=1) {
        resultArray.push(resultSet.rows.item(i));
    }

    var shuffledArray = shuffle(resultArray);

    // do something with the shuffled array...
});

shuffle()可能是这样的:https://stackoverflow.com/a/962890/490560

答案 1 :(得分:0)

也许以下内容可行:

SELECT *
  FROM (SELECT RANDOM() as RANDOM_NUM, Q.*
          FROM QUESTIONS Q)
  ORDER BY RANDOM_NUM

分享并享受。