oracle中為什麼不能用select ename,max sal from emp

2022-09-08 07:45:03 字數 2684 閱讀 1307

1樓:

不能,因為max(sal) 算出來的是一行,而ename查出的是多行,你這個錯誤就是最常見的一行對多行,要想在select ename,max(sal) from emp;基礎上更改,

可以改為:select ename,max(sal) from emp group by ename;

2樓:匿名使用者

把ename去掉

select max(sal) from emp;

或者select ename,max(sal) from emp group by ename;

兩個在一起用,在編譯器來看有二義性

3樓:華夏日長興

select ename,max(sal) from emp group by ename;

這樣ok

4樓:347、壞叔叔

sql> select ename,deptno,sal from emp eo

2 where sal=(select max(sal) from emp ei where ei.deptno=eo.deptno);

oracle為什麼select ename sal from emp where sal=max(sal);不行?

5樓:東桖柳

oracle對於能直接拿出來用的函式是有很多要求的,不是想怎麼用就怎麼用的,這就叫語法好不.

6樓:匿名使用者

max函式需要知道表名的

還有where選擇條件中 等號後面 直接寫語句不對吧

是要括號的

7樓:重複經過

select ename ,max(sal) sal from emp group by ename;

8樓:

你也可以寫成這樣

select ename ,max(sal) from emp

oracle資料庫 select ename ,sal from emp where empno

9樓:塵雨洛煙

因為用的是in謂詞,它的作用就是從選定的mgr中進行選擇

10樓:

因為你的資料中,沒有empno的值是「mgr」的行!

11樓:匿名使用者

語法有問題,括號裡用單引號,只有乙個值最好用等於

oracle 11g預設資料庫裡面,有張emp表,其中有欄位ename、deptno、sal分別對應雇員名、部門編號和月薪

12樓:陳舉超

select deptno,max(sal) from emp group by deptno;

這條語句可以得出每個部門的最高工資,可以在這條語句的基礎上和emp表關聯,得出月薪最高的雇員;

例如:select a.ename,a.

deptno,a.sal from emp a,(select deptno,max(sal) m_sal from emp group by deptno) b where a.deptno=b.

deptno and a.sal=b.m_sql;

除此以外可以是通過分析函式獲得部門最高月薪員工

例如:select ename,deptno,sal,rank() over(partition by deptno order by sal desc) from emp;

select * from (select sal, ename from emp order by sal desc) where rownum = 1;

13樓:匿名使用者

3全部你寫的不對啊

這個有n種寫法,隨便給你列幾個

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)

14樓:匿名使用者

用了個子查詢,在已工資排序的結果中取第乙個,就是工資最高的。

15樓:勇敢的樵夫

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

16樓:沒上樓

查詢出emp表裡面工資最高的人的名字和工資,話說問題是什麼

關於oracle的問題,有emp,dept,salgrade 三個表。完成以下問題。

VBA中sheet加數字為什麼不能用

要通過vba把sheet1工作表中的資料寫入sheet2工作表中,可以採用如下方法 1 假如要把sheet1工作表中a1單元格的資料寫入sheet2工作表的a1單元格中。2 可以執行以下語句 sub test sheets sheet2 range a1 value sheets sheet1 ra...

CAD中為什麼我設定的圖層不能用

因為你沒有把設定好的圖層置為當前圖層 有個能設定的層處於鎖定狀態,有可能該層不是 活動 層。主要是為了看圖方便,因為有些圖紙很多工程線,比如電力 弱電 給排水 暖通 雨水 熱力等很多線。都在一張圖上,然後你看圖很亂,所以設定一種工程線路一個圖層,然後就能看圖時候,吧不必要的關掉,就請清楚看出來你想看...

為什麼不能用鐵鍋熱奶,為什麼不能用鐵鍋煮醋?

並沒有鐵鍋熱奶不好的說法 糊底,是火候沒有調校好 上面浮著一層黃油,不是牛奶的脂肪層,就是鍋沒有洗乾淨。為什麼不能用鐵鍋煮醋?鐵鍋怕酸,所以炒了酸菜 之類的酸性食物都要馬上清洗。其實用醋洗主要就是把那層氧化的鐵鏽層腐蝕掉,加熱就腐蝕過頭了,炒菜是沒有問題的,只是鍋壽命縮短了不少。所以平時不建議用鐵鍋...