5

在 SQL Server2005 中,Row_number() 函数用于检索结果集分区内行的序号,每个分区的第一行从 1 开始。这在通过 Table 中的大量记录实现分页时非常有用。SQLite 中是否有与此类似的功能。

4

2 回答 2

0

不会。通常你会用自己的代码来处理这些细节。

于 2012-06-23T04:31:26.040 回答
0

您可以使用类似于以下格式的代码模拟在 ROW_NUMBER() 函数中完成的原始编号。

CREATE TABLE Temp.Output AS
SELECT *
FROM  (
    SELECT 10 AS ID,'Darren' AS Name
    UNION ALL
    SELECT 20,'Roger'
    UNION ALL
    SELECT 30,'Emil'
    UNION ALL
    SELECT 40,'Doug'
    UNION ALL
    SELECT 50,'Martin'
)
ORDER BY Name ASC
;
SELECT ROWID AS ROWNUMBER, ID, Name
FROM Temp.Output
;
DROP TABLE Temp.Output
;

它不支持对结果进行分组的“PARTITION BY”(但您可以使用一些额外的 SQL)。

于 2014-12-01T02:46:13.603 回答