rjps.net
当前位置:首页 >> SQL查询前几条记录 >>

SQL查询前几条记录

各种不同copy的数据库查询前N条记2113录,都不一样5261,现在总结了一下4102,列了出来: 1. ORACLE SELECT * FROM TABLE1 WHERE ROWNUM

看你是什么数据库,如果是sqlserver2005(是05版本还是07版本忘记了)以上或者oeacle的话,那么用select * from table where rownum 追问: rownum不是oracle特有的么?sqlsever也能用?? 追答: sqlserver中我忘了什么版本了,在那个版本后的就有 追问: 谢谢 评论0 0 0

Create Table T( id int identity(1,1), Val int)insert into T(val) values(1)insert into T(val) values(2)insert into T(val) values(3)insert into T(val) values(4)insert into T(val) values(5)insert into T(val) values(6)insert into T(val) values(7)insert into T(val) values(8

1. Oracle数据库 SELECT * FROM TABLENAME WHERE ROWNUM <= N2. Infomix数据库 SELECT FIRST N * FROM TABLENAME3. DB2数据库 SELECT * FROM (SELECT * ROW_NUMBER() OVER({ORDER BY COL1 DESC}) AS ROWNUM

select * from 表名 group by 名字 order by 时间 desc limit 10 这sql语句的意思是查询表名中名字不重复的10条记录,并按时间从大到小排序,只取前面10条记录.

select scrname,stucount from scrtab select top 3 scrname,stucount from scrtab order by stucount 先按人数排序,然后在查出前三个

SELECT TOP 50 s.SNO,s.SNAME,c.CON,c.CNAME,t.TNO,t.TNAME FROM S s,SC sc,C c,T t WHERE s.SNO = sc.SNO AND sc.CNO = c.CNO AND c.TNO=t.TNO 遇到这种关系到多个表的查询,一般最好是用多表连接

select top 3 * from 表 --标准通用语法,适用于oracle,sql,mysql等

select top 10 要显示的列名或(*) from 表名字 order by addusertime desc top 10 就是显示10条 中间有空格就是select空格top空格10空格 后边是要显示的列名,你要是要全部 就是 * order by addusertime desc 是按照时间降序排序 就是最新的最上边显示 要给分哦

查询前后3条记录的写法:SELECT *FROM Sales.SalesOrderDetailWHERE SalesOrderDetailID IN (SELECT TOP 3 MIN(SalesOrderDetailID) SalesOrderDetailIDFROM Sales.SalesOrderDetailUNION ALLSELECT TOP 3 MAX(SalesOrderDetailID) SalesOrderDetailIDFROM Sales.SalesOrderDetail)

网站首页 | 网站地图
All rights reserved Powered by www.rjps.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com