SQL语法集锦一:显示每个类别最新更新的数据

本文转载http://www.cnblogs.com/lxblog/archive/2012/09/28/2707504.html

(1)显示每个类别最新更新的数据

在项目中经常遇到求每个类别最新显示的数据,比如显示某某某类别最新更新的5条数据。特写下这个sql记录于此:

-- =============================================
-- 作者:    <Rising_Sun>
-- 创建日期: <2012-9-28>
-- 描述: <显示每个类别下最新更新的n条数据>
-- =============================================
DECLARE @t TABLE
(
  NewsId INT,
  NewsType NVARCHAR(20),
  NewsTitle NVARCHAR(50),
  AddTime DATETIME
)

INSERT INTO @t VALUES(1,'体育新闻','火箭赢了','2011-10-11')
INSERT INTO @t VALUES(2,'体育新闻','刘翔因伤退出','2011-10-12')
INSERT INTO @t VALUES(3,'体育新闻','奥尼尔减肥成功','2011-10-13')
INSERT INTO @t VALUES(4,'八卦新闻','凤姐结婚了','2011-10-11')
INSERT INTO @t VALUES(5,'八卦新闻','刘德华当爹了','2011-10-12')
INSERT INTO @t VALUES(6,'八卦新闻','苍老师来中国宣传了','2011-10-13')
INSERT INTO @t VALUES(7,'财经新闻','股票跌破2800点','2011-10-12')
INSERT INTO @t VALUES(8,'财经新闻','人民币首次降息','2011-10-10')

--每个类别最新显示数量
DECLARE @ShowNums INT
SET @ShowNums=2
SELECT * FROM (
  SELECT NewsId,NewsTitle,NewsType,AddTime,         ROW_NUMBER() OVER(PARTITION BY NewsType ORDER BY AddTime DESC) AS RowIndex  FROM @t ) AS TWHERE RowIndex <=@ShowNums

运行该Sql,结果显示为:

时间: 2024-09-20 14:23:45

SQL语法集锦一:显示每个类别最新更新的数据的相关文章

SQL Server实现显示每个类别最新更新数据的方法

本文实例讲述了SQL Server实现显示每个类别最新更新数据的方法.分享给大家供大家参考,具体如下: 在项目中经常遇到求每个类别最新显示的数据,比如显示某某某类别最新更新的5条数据.特写下这个sql记录于此: -- ============================================= -- 作者: <Rising_Sun> -- 创建日期: <2012-9-28> -- 描述: <显示每个类别下最新更新的n条数据> -- ============

SQL语法集锦一:SQL语句实现表的横向聚合

本文转载:http://www.cnblogs.com/lxblog/archive/2012/09/29/2708128.html   问题描述:假如有一表结构和数据如下: C1 C2 C3 C4 C5 1 2 6 3 4 2 2 3 4 5 0 3 6 2 8 经过sql查询后输出的结果集为:(字段后面增加聚合[最大值] [最小值] [>=5的值个数]) C1 C2 C3 C4 C5 Max Min Count(>=5) 1 2 6 3 4 6 1 1 2 2 3 4 5 5 2 1 0

SQL语法集锦三:合并列值与分拆列值

本文转载http://www.cnblogs.com/lxblog/archive/2012/09/29/2708724.html   在SQL中分拆列值和合并列值老生常谈了,从网上搜刮了一下并记录下来,以便不时之需 :) 什么叫分拆列值和合并列值呢?就只是这样的,比如有如下表A结构及数据: Id Data 1 aa,bb 2 aaa,bbb,ccc 将该表A的Data字段数据根据 "," 进行分拆得到如下表B Id Data 1 aa 1 bb 2 aaa 2 bbb 2 ccc 这

全面接触SQL语法

sql语法 SQL功能与特性 其实,在前面的文章中,已经提及SQL命令的一些基本功能,然而,通过SQL命令,程序设计师或数据库管理员(DBA)可以: (一)建立数据库的表格.(包括设置表格所可以使用之空间) (二)改变数据库系统环境设置. (三)针对某个数据库或表格,授予用户存取权限. (四)对数据库表格建立索引值. (五)修改数据库表格结构.(新建.删除或是修改表格字段) (六)对数据库进行数据的新建. (七)对数据库进行数据的删除. (八)对数据库进行数据的修改. (九)对数据库进行数据的查

SQL语法查询文档

sql语法  一.SQL速成  结构查询语言(SQL)是用于查询关系数据库的标准语言,它包括若干关键字和一致的语法,便于数据库元件(如表.索引.字段等)的建立和操纵.  以下是一些重要的SQL快速参考,有关SQL的语法和在标准SQL上增加的特性,请查询MySQL手册.  1.创建表  表是数据库的最基本元素之一,表与表之间可以相互独立,也可以相互关联.创建表的基本语法如下:  create table table_name  (column_name data无效 {identity |null

SQL语法速成

sql语法|速成 一.SQL速成  结构查询语言(SQL)是用于查询关系数据库的标准语言,它包括若干关键字和一致的语法,便于数据库元件(如表.索引.字段等)的建立和操纵.  以下是一些重要的SQL快速参考,有关SQL的语法和在标准SQL上增加的特性,请查询MySQL手册.  1.创建表  表是数据库的最基本元素之一,表与表之间可以相互独立,也可以相互关联.创建表的基本语法如下:  create table table_name  (column_name data无效 {identity |nu

SQL语法大全

sql语法  SQL语法大全   SQL语法大全1. ASP与Access数据库连接: <%@ language=VBscript%><%dim conn,mdbfilemdbfile=server.mappath("数据库名称.mdb")set conn=server.createobject("adodb.connection")conn.open "driver={microsoft access driver (*.mdb)};u

全面接触SQL语法(4)

sql语法 HAVING 条件子句 指定一特定的分组记录,并满足HAVING 所指定的条件或状态,但条件是针对分组的条件设置. SELECT fieldlistFROM tableWHERE selectcriteriaGROUP BY groupfieldlistHAVING groupcriteria fieldlist显示被查询的字段名称.(可与ALL,DISTINCT,DISTINCTROW,或TOP相结合) table欲查询数据的表格名称. selectcriteria选取标准. gr

全面接触SQL语法(3)

sql语法 ORDER BY条件语句 此条件子句,通常与SELECT语句合并使用目的是将查询的结果,依照指定字段加以排序. SELECT fieldlist FROM table WHERE selectcriteria ORDER BY field[ASC|DESC][,field2[ASC|DESC][,...]] fieldlist 欲查询的字段名称.其中可以与ALL,DISTINCT,DISINCTROW,或TOP一起来使用. table 欲查询的表格名称. selectcriteria