在react-native-sqlite-storage中时,SQL命令未按预期运行。这是命令本身:
WITH attempted_questions AS (SELECT question_id, LEAD(created_date) OVER (PARTITION BY question_id ORDER BY created_date ASC) as next_created_date, correct FROM user_answers), latest_incorrect_questions AS ( SELECT question_id FROM attempted_questions WHERE correct = 0 AND next_created_date IS NULL ), bank_questions AS (SELECT q.* FROM Questions AS q INNER JOIN latest_incorrect_questions AS liq ON liq.question_id = q.id) SELECT * FROM bank_questions
我已经尝试在“ SQL Server的DB浏览器”上运行它,并且它运行正常。但是,在使用react-native-sqlite-storage时它不起作用。代码如下。 FIY:该函数本身正常工作(使用“ SELECT * FROM Questions”之类的简单命令时,该函数正常工作。)
function fetchDATA() {
return new Promise((resolve, reject) => {
db.transaction(function (txn) {
txn.executeSql(
'WITH attempted_questions AS (SELECT question_id, LEAD(created_date) OVER (PARTITION BY question_id ORDER BY created_date ASC) as next_created_date, correct FROM user_answers), latest_incorrect_questions AS ( SELECT question_id FROM attempted_questions WHERE correct = 0 AND next_created_date IS NULL ), bank_questions AS (SELECT q.* FROM Questions AS q INNER JOIN latest_incorrect_questions AS liq ON liq.question_id = q.id) SELECT * FROM bank_questions',
[],
(txn, results) => {
resolve(results)
});
});
})
}
鉴于函数和SQL命令是各自独立工作的,所以我希望它们也能够共同工作。但是,事实并非如此。有人可以帮我解决这个问题吗?