我有一个像这样的 Sqlite 数据库表(没有升序)
但我需要按按名称升序检索表,当我将其设置为升序时,rowId 以困惑的顺序更改如下
但我每次都需要按升序检索一些有限数量的联系人5
like Aaa - Eeee and 然后 Ffff- Jjjjj ......
但要设置 **t 限制,例如 0-5 5-10 .... ** 它可以使用 rowid,因为它们的顺序很乱
所以 我需要另一列,例如(oracle 中的 rowNum),顺序为 1234567...每次如下
如何使用现有列检索该列
注意:我们在 SQLITE 中没有类似列的 ROWNUM
最佳答案
伪造的 rownum 解决方案很聪明,但我担心它不能很好地扩展(对于复杂的查询,你必须连接并计算每一行在当前行之前的行数)。
我会考虑使用 create table tmp as select/*your query*/
。
因为在 create as select 操作的情况下,插入时创建的 rowid
这些行正是 rownum(一个计数器)。它由 SQLite 文档指定。
插入初始查询后,您只需要查询 tmp 表:
select rowid, /* your columns */ from tmp
order by rowid
关于iphone - 如何在sqlite IPHONE中获取rowNum之类的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14023292/