select * from (select sal, ename from emp order by sal desc) where rownum = 1;
4个回答
展开全部
你写的不对啊
这个有N种写法,随便给你列几个
这个,就是根据工资排序,找出最高的那个,row_number这个东西其实很有用,百度一下,解释应该也很多
select t.* from
(select row_number() over (order by sal desc) rn,emp.* fom emp) t
where rn<=1
这个就是,先选出最高的工资,然后让emp表里的数据=最高工资的那个人,筛选出来就OK
select * from emp where sal in (select max(sal) from emp)
展开全部
用了个子查询,在已工资排序的结果中取第一个,就是工资最高的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select sal, ename from emp order by sal desc
这句是说把查找到的sal,ename按照sal由高到低排列,
外面套的那个是把上面那句查询结果当作一个临时表或者视图,查找他的第一行
rownum = 1
所以查到的应该是
sal最大的一个值
等价于
select top 1 sal, ename from emp order by sal desc
这句是说把查找到的sal,ename按照sal由高到低排列,
外面套的那个是把上面那句查询结果当作一个临时表或者视图,查找他的第一行
rownum = 1
所以查到的应该是
sal最大的一个值
等价于
select top 1 sal, ename from emp order by sal desc
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
查询出emp表里面工资最高的人的名字和工资,话说问题是什么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询