一条sql 面试题~~,求解~
数据表 classID title
12 上海
13 湖北
16 北京
19 深圳
23 武汉
54 成都
58 杭州
请按以下方式查出数据
5 杭州
4 成都
3 武汉
2 深圳
1 北京 --------------------编程问答-------------------- 可以利用rownum()来实现 --------------------编程问答--------------------
select row_number() over(order by ID) as row_number,inspection_id from class order by row_number desc--------------------编程问答-------------------- 喔,select后面还要加个top 5 --------------------编程问答--------------------
select row_number() over(order by ID) as row_number,inspection_id from class order by row_number desc--------------------编程问答--------------------
SELECT ROW_NUMBER() OVER(ORDER BY id DESC) AS id, title FROM table--------------------编程问答-------------------- 好像Sqlserver里和Oralce里面实现不一样,因为系统提供的函数不一样。 --------------------编程问答-------------------- Access 的啊。好象执行不了哦~ --------------------编程问答-------------------- select row_number() over(order by ID) as row_number,inspection_id from class
order by row_number desc
--------------------编程问答--------------------
加了也不对,显示的为
7
6
5
4
3 --------------------编程问答-------------------- 我的答案是:
--------------------编程问答-------------------- 用模糊查找的方法试试吧 --------------------编程问答-------------------- 路过,我看不懂。现在还不知道在2005中怎样去用建立一个数据库然后怎样去用了
select row_number() over(order by ID) as row_number,sell from class where title in
(select top 5 title from class) order by row_number desc
哪位仁兄有没有实例教程
--------------------编程问答-------------------- if object_id('[dbo].[class]') is not null
drop table class
create table class(id int,title nvarchar(50));
insert into class values(12,'上海');
insert into class values(13,'湖北');
insert into class values(16,'北京');
insert into class values(19,'深圳');
insert into class values(23,'武汉');
insert into class values(54,'成都');
insert into class values(58,'杭州');
select row_number() over(order by id asc) as id,title from(select top(5) * from class order by id desc) as a
order by id desc --------------------编程问答--------------------
补充一下;
--------------------编程问答-------------------- ID倒叙排列?
select row_number() over(order by ID) as row_number,sell from class where title in
(select top 5 title from class order by ID desc) order by row_number desc
--------------------编程问答-------------------- 用ACCESS试一下啊,大哥们~~ --------------------编程问答-------------------- sql2005 就用row_number()
其他的可以 查询一个自增编号 然后在按他的倒序排列就好了
select top 5 * from (select identity(1,1) as num,title from tablename)t order by t.num desc--------------------编程问答-------------------- sql2005 就用row_number()
其他的可以 查询一个自增编号 然后在按他的倒序排列就好了
select top 5 * from (select identity(1,1) as num,title from tablename)t order by t.num desc--------------------编程问答-------------------- 没人用ACCESS吗? --------------------编程问答-------------------- SQL Server 还是 Oracle? --------------------编程问答-------------------- 是ACCESS数据库啊~~ --------------------编程问答-------------------- 1条... --------------------编程问答-------------------- select row_number() over(order by ID) as row_number,title from class where title in
(select top 5 title from class order by id desc) order by row_number desc --------------------编程问答-------------------- row_number() 在ACCESS 不行啊,没这东西根本~~ --------------------编程问答-------------------- select * from (select top(5) row_number() over(order by id desc) as id,title from class) as a order by a.id desc --------------------编程问答-------------------- select * from (select top(5) row_number() over(order by id desc) as id,title from class) as a order by a.id desc --------------------编程问答-------------------- select row_number (order by id ) as id ,top 5 title from class order by id desc --------------------编程问答--------------------
select top 5 (select 6-count(*) from table1 where id>=a.id) as id,
title from table1 a order by id desc
access可用 --------------------编程问答-------------------- 这样不理想啊,如果只有4条怎么办? --------------------编程问答-------------------- mark --------------------编程问答-------------------- 标记学习 这个真不会 --------------------编程问答-------------------- 来人啊,这怎么弄啊~~ --------------------编程问答--------------------
select row_number() over(order by ID) as row_number,title from class where title in
(select top 5 title from class order by id desc) order by row_number desc
经过测试这样是可行的 --------------------编程问答-------------------- 要是对面试官不爽, 就这么写:
select 5, '杭州'
union all
select 4 '成都'
union all
select 3 '武汉'
union all
select 2 '深圳'
union all
select 1 '北京'
- -! --------------------编程问答--------------------
正解,就用 ROW_NUMBER()
补充:.NET技术 , C#