日期:2014-05-17  浏览次数:20777 次

SQL 问提取第一条结果,请大侠帮帮忙!!
select 考场号,考场号 from 
 TBL X
 where 
 x.姓名 = 'zhang'
 and X.性别= '男'
 order by A desc ,B asc

结果是
 考场号 考场号
 12 3
 33 3
 06 1

我现在就想要查询结果是第一条结果,我在条件中加了 ROWNUM = 1
但出现的结果 06 1
请大侠指教!!!!路过的帮顶,谢谢!!!

------解决方案--------------------
SQL code
select*from (select 考场号,考场号 from 
TBL X 
where 
x.姓名 = 'zhang' 
and X.性别= '男' 
order by A desc ,B asc )a
where ROWNUM = 1

------解决方案--------------------
SELECT * FROM 
(SELECT 考场号A,考场号B rownumber() over(ORDER BY 考场号A desc ,考场号B asc ASC) AS rn
 FROM X 
where 
x.姓名 = 'zhang' 
and X.性别= '男' ) AS a1 
WHERE a1.rn=1

我没有做测试,也不知道你用的是什么数据库。
不知道rownumber() over()能不能用。

------解决方案--------------------
详细解释看此贴
http://topic.csdn.net/u/20080827/17/5962849a-6504-4b4b-8d71-fcf9bf7f9664.html
------解决方案--------------------
select * from 表名 where rownum<2;
或者
select * from (select (表中的所有字段+num) from 表名)where num=1;

肯定可以,不信你试一试!