SQL Server从数据库中获取一组10个元素

用户名

我正在为电视开发EPG。我需要在每个页面中显示10个频道的epg。我需要从SQL Server获取数据。调用服务器获取频道从0-9,而不是用户可能决定更改页面,这对我来说意味着我应该再次调用服务器获取频道从10-19,下一页20-29,依此类推。问题是如何在SQL Server中获取类似的组数据?

id channelNr description shortname starttime andtime
0  100        desc1       tv1       10:10:00 10:40:00
1  101        desc2       tv2       10:40:00 12:40:00

这是我的桌子的样子,但是有更多的行

marc_s

您需要这样的东西-返回所需数据的CTE(公用表表达式),以及RowNum定义行号的列;那么您可以WHERE RowNum BETWEEN 0 AND 9选择,然后再WHERE RowNum BETWEEN 10 AND 19选择第二页,依此类推。

由于您要选择前10行,因此该RowNum列必须具有一些排序条件-例如您的“频道号”或对您有意义的任何内容(我在BirthDate DESC这里只是作为演示选择)。

这里的示例基于AdventureWorks示例数据库-您需要根据自己的需要和表/列对其进行调整:

;WITH PagedResults AS
(
    SELECT
        e.BusinessEntityID ,
        e.NationalIDNumber ,
        e.OrganizationLevel ,
        e.JobTitle ,
        e.BirthDate ,
        e.HireDate ,
        RowNum = ROW_NUMBER() OVER(ORDER BY BirthDate DESC)
    FROM
        HumanResources.Employee e
)
SELECT
    *
FROM    
    PagedResults
WHERE
    RowNum BETWEEN 0 AND 9

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从数据库表中获取一组集群/一组值-Oracle SQL

使用sql从数据库中的每个组中获取一个随机记录(行)

如何创建SQL Server数据库列的唯一组合

SQL:如何在数据库中搜索列名(在一组表中)

SQL从一组数据中获取最新记录

如何在 MS SQL 服务器的数据库中的每个表中创建一组相同的列?

是否可以利用SQL Server数据库项目来管理具有各种架构差异的一组数据库?

从SQL数据库中向Scala中的val获取一个值

SQL Server与来自同一Azure SQL SERVER的不同Azure SQL数据库中的两个表合并

Select语句从Netezza数据库中获取数据并插入SQL Server数据库(SSIS)

SQL Server排名:从一组行中获取第一行

从SQL Server获取数据库列表

SQL Server向数据库中的每个表添加一个uniqueidentifier

在AWS RDS Sql Server实例中仅还原一个数据库

从 SQL Server 中的另一个数据库表插入选择

使用一个SQL Server查询从不同服务器上的不同数据库获取数据

SQL Server 2012清理一组数据

SQL使用相同的查询从同一组数据中获取多个结果计数

如何从多个表的 SQL 查询中获取一组数据?

将SQL数据库部署到与SQL Server不同的资源组中

将表从一个数据库复制到SQL Server中的另一个数据库

在SQL中获取每年的最后一组日期?

将数据从一个数据库表插入到SQL Server中的另一数据库表

在SQL或SAS中检索一组数据的子集

在SQL Server中复制数据库

在SQL Server中收缩数据库

从另一个数据库中插入INTO数据库,在SQL Server中指定一些值

将 Azure SQL 数据库的备份还原到另一个资源组的另一个 Azure SQL 数据库

当表不在数据库中时,出现SQL Server错误:“数据库中已经有一个名为'<我的表>'的对象。”