① sql server,oracle中查询结果返回指定的行数
select * from (select a.*,a.rownum as roid from table a order by 2 desc/asc )bwhere b.roid between 10 and 20这是ORACLE的写法,在子查询里可以根据你所需要的字段进行排序,然后选取10-20的或者别的你所需要的数据,其中rownum为关键字,所以需要在子查询里定义别名,然后在外层才能引用这个排序键值
② sql 查询指定行
什么数据库?
如果是 Oracle 或者 SQL Server 的话。 可以
SELECT
*
FROM
(
SELECT ROW_NUMBER() OVER( ORDER BY 排序的字段 ) AS 序号
表.*
FROM
表
) tmp
WHERE
tmp.序号 = 12345
如果是 MySQL 的话, 直接
SELECT * FROM 表 LIMIT 12344, 1
注:
LIMIT 接受一个或两个数字参数。
参数必须是一个整数常量。
如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,
第二个参数指定返回记录行的最大数目。
初始记录行的偏移量是 0(而不是 1)
③ SQL 限定某个字段返回行数
select * from 表名 where 列表1=456 and 列表2='工程3'
---------补充--------
select * from 表名 where 列表1 in (select 列表1 from 表名 group by 列表1 having count(列表1)=1)
用用这个语句试试,表名和列名麻烦你自己替换一下
④ sql 查询返回满足条件的行和下一行
oracle里可以用ROWNUM伪列,写了一个例子用作参考:
with t1 as (select rownum n,a,b,lead(rownum)over(order by rownum) ne from cc)
,t2 as (select n,a,b,ne from t1 where 5 in (a,b))
select n,a,b from t2
union
select n,a,b from t1 where n in (select ne from t2)
把a,b换成你的字段,cc换成你的表名就可以了,我自己用数据测试了下,没问题。
⑤ sql中限制返回数据行数的关键字是什么
取前N条记录:
SELECT TOP N column1, column2, column3 FROM tables
⑥ 如果使用select语句返回指定条数的记录,则应使用什么关键字来限定输出字段
TOP 1就是指查找第一条
这是SQL 中的写法
select top 1 * from logtb
⑦ 访问ACCESS数据库的SQL语句中如果想返回指定的记录条数使用什么关键字
select count(*) from 表
--or
select count(字段名) from 表
--or
select count(1) from 表 --1为字段在建表时的顺序
⑧ sql server和oracle中查询结果返回指定行数的语句
SqlServer返回指定行数查询结果:
selecttop10*fromtalbewherea>10orderbya;
进行排序后,再返回指定行数,可以返回最大的行数或最小的行数。
Oracle返回指定行数查询结果:
select*fromtablewherea>10andrownum<=10;
进行排序后,只能取得默认的行数,无法直接排序,
若要排序,则要嵌套Sql:
select*from(select*fromtablewherea>10orderbya)whererownum<=10;
你验证过吗?oracle子查询不支持order by?
⑨ SQL查询语句怎样限定返回结果集的行数
1、创建测试表,create table test_rows(id number, value varchar(200));
⑩ MS SQL WHERE语句后面限制查询返回的行数
select top 20 * from table;
不用加where语句 ,top关键字是直接返回前几行。