查詢某個(gè)字段中最大的值,直接使用max函數(shù)即可:
創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站制作、成都網(wǎng)站建設(shè)和中國電信成都樞紐中心的網(wǎng)絡(luò)公司,有著豐富的建站經(jīng)驗(yàn)和案例。
select?max(字段名)?from?表名
select name
from EMPLOYEE
where date=(select max(date) from EMPLOYEE);
---
以上,希望對你有所幫助。
1.查詢oracle表空間的使用情況
select b.file_id文件ID,
b.tablespace_name表空間,
b.file_name 物理文件名,
b.bytes 總字節(jié)數(shù),
(b.bytes-sum(nvl(a.bytes,0))) 已使用,
sum(nvl(a.bytes,0))剩余,
sum(nvl(a.bytes,0))/(b.bytes)*100 剩余百分比
from dba_free_space a,dba_data_files b
where a.file_id=b.file_id
group by b.tablespace_name,b.file_name,b.file_id,b.bytes
order by b.tablespace_name
2.查詢oracle系統(tǒng)用戶的默認(rèn)表空間和臨時(shí)表空間
select default_tablespace,temporary_tablespace from dba_users
3.查詢單張表的使用情況
select segment_name,bytes from dba_segments where segment_name = 'RE_STDEVT_FACT_DAY' and owner = USER
RE_STDEVT_FACT_DAY是您要查詢的表名稱
首先,建立測試表,插入測試數(shù)據(jù):
create table test_a? (aa varchar2(6),bb varchar2(6));
當(dāng)我們想要取每條記錄中字段AA和BB的最大值(OR最小值)時(shí),通常想到的邏輯是if-then-else;又或者是case- when-else-end?
emmm,其實(shí)一個(gè)關(guān)鍵詞就可以搞定啦。取最大:greatest(字段1,字段2)取最小:least(字段1,字段2)。
select a.aa,a.bb,greatest(a.aa,a.bb) from test_a a ; --取字段aa和字段bb中的最大值
select a.aa,a.bb,least(a.aa,a.bb) from test_a a ; --取字段aa和字段bb中的最小值
END;
oracle中“最大值”的sql語句這樣寫:
SELECT a。
FROM table1 a? WHERE NOT 。
EXISTS (SELECT 1 FROM table1 b WHERE b.ida.id)。
一、Oracle一般指甲骨文公司
甲骨文公司,全稱甲骨文股份有限公司(甲骨文軟件系統(tǒng)有限公司)。
甲骨文公司是全球最大的企業(yè)級軟件公司,總部位于美國加利福尼亞州的紅木灘。
二、sql一般指結(jié)構(gòu)化查詢語言
結(jié)構(gòu)化查詢語言(Structured Query Language)簡稱SQL(發(fā)音:/?es kju? ?el/ "S-Q-L")。
sql是一種特殊目的的編程語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計(jì)語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng)。
sql同時(shí)也是數(shù)據(jù)庫腳本文件的擴(kuò)展名。
1、創(chuàng)建測試表,
create table test_max(id number, value number);
2、插入測試數(shù)據(jù)
insert into test_max values(1,12);
insert into test_max values(2,100);
insert into test_max values(3,55);
insert into test_max values(4,100);
insert into test_max values(5,50);
commit;
3、查詢表中全量數(shù)據(jù),select t.*, rowid from test_max t;
4、編寫sql,使用rank分析函數(shù),取value值為最大的記錄; select t.* from (select t.*, rank() over(order by value desc) rk from test_max t) t where rk = 1;