Я экспериментирую со встроенной поддержкой SQL в браузере Safari и хочу выбрать случайный запрос через Javascript.
SELECT * FROM questions ORDER BY random()
Возвращает не разрешено использовать функцию: случайно
См. этот снимок экрана .
Есть предложения?
Запрос с использованием неслучайного порядка, затем перемешивание результатов:
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
shuffle()
Возможно, будет работать что-то вроде следующего:
SELECT * FROM (SELECT RANDOM() as RANDOM_NUM, Q.* FROM QUESTIONS Q) ORDER BY RANDOM_NUM
Поделитесь и наслаждайтесь.