SQL Select 声明基于 iOS 版本

SQL Select Statement based on iOS version

以下语句在我的应用程序中工作,iPhone 具有 iOS 13,但是当我测试它时它是 iOS12 它崩溃并说周围有语法错误“ (". 任何原因和可能的修复。

我假设它与 iOS12

附带的 SQLite 版本有关
SELECT * 
FROM   (SELECT *, 
               Row_number() 
                 OVER ( 
                   ORDER BY foodname COLLATE nocase ASC) AS RN 
        FROM   foodtable) t1 
WHERE  rn % 5 = 0 

对于不支持 window 函数的 SQLite 版本,您可以获得如下相同的结果:

select f.*
from FoodTable f
where (select count(*) from FoodTable where FoodName <= f.FoodName) % 5 = 0