期末復(fù)習(xí)page5

數(shù)據(jù)查詢:
前面已經(jīng)創(chuàng)建了表碰声,插入了數(shù)據(jù)部宿,現(xiàn)在可以進行數(shù)據(jù)查詢。

SELECT * FROM STUDENT; --查詢student表所有數(shù)據(jù)笔诵。

SELECT sno,sname,ssex,sage,sdept FROM student;  --同上钟病,可以查
所有列萧恕,也可以直接用*替代所有列名字屹徘。

SELECT sno,sname FROM student;  --查詢部分列

SELECT sname,2017-sage FROM student;  --查詢名字和出生的年份

SELECT sname,2017-sage as 出生年份 FROM student;   
--查詢名字和出生的年份簿煌,列名為出生年份。

SELECT sname,2017-sage 出生年份 FROM student;   --同上

SELECT sname,2017-sage 出生年份,'aaa' FROM student;   --同上鉴吹,且追加輸出一列aaa

SELECT '名字是:' || sname FROM student;  --查詢名字姨伟,輸出帶 名字是: 前綴的。

SELECT sno FROM SC;  --查詢所有sno拙寡,但可能帶有重復(fù)的輸出

SELECT DISTINCT sno FROM SC;  --消除重復(fù)的輸出

SELECT DISTINCT cno,grade FROM SC;  --同時消除兩列重復(fù)的輸出。

where引出查詢條件:

SELECT sname琳水,sage
from student
where sage>19;  --查詢sage大于19的數(shù)據(jù)

SELECT sname肆糕,sage
from student
where NOT sage<=19;  --效果同上


SELECT DISTINCT sno
FROM sc
where grade<60;  --查詢grade小于60的數(shù)據(jù)般堆,去重顯示

SELECT sname,sdept,sage
from student
where sage between 20 and 22;  --查詢sage在20到22的數(shù)據(jù)


SELECT sname诚啃,sdept,sage
from student
where sage NOT between 20 and 22;  --查詢sage不在20到22的數(shù)據(jù)

SELECT sname,ssex
from student
where sdept in('aaa','bbb');  --查詢sdept列包含aaa或bbb的數(shù)據(jù)淮摔。

SELECT sname,ssex
from student
where sdept NOT IN('aaa','bbb');  --查詢sdept列,既沒有aaa始赎,也沒有bbb的數(shù)據(jù)
通配符
換碼
SELECT * 
from student
where sno='001';

SELECT * 
from student
where sno like '001';  --查詢效果同上

SELECT sname,sno,sex
from student
where  sname like '張%';  --查詢姓張的數(shù)據(jù)

SELECT sname,sno,sex
from student
where  sname not like '張%';  --查詢不姓張的數(shù)據(jù)

做個測試:
--插入數(shù)據(jù):
insert into cource values('4','DB_design',1,4);
insert into cource values('5','DBAdesign',1,3);

select cno,ccredit
from cource
where cname like 'DB_design';

select cno,ccredit
from cource
where cname like 'DB\_design' ESCAPE '\';  --對比一下查詢的數(shù)據(jù)結(jié)果和橙。

is null 不能用 = null替代。


select sno,cno
from sc
where grade is null;  -- 查詢grade為空值的數(shù)據(jù)

select sno,cno
from sc
where grade is not null;  -- 查詢grade不為空值的數(shù)據(jù)

條件的優(yōu)先級:and優(yōu)先級高于or造垛,可以用括號改變優(yōu)先級魔招。


select sname
from student
where sdept ='aaa'
and sage<20;  --查詢sdept是aaa,sage小于20的數(shù)據(jù)五辽。條件要同時滿足办斑。


SELECT sname,ssex
from student
where sdept='aaa' or sdept='bbb';  
---等同于SELECT sname,ssex
from student
where sdept in('aaa','bbb');  

SELECT sname,sdept,sage
from student
where sage>=20 
and sage<=22;
--等同于SELECT sname杆逗,sdept,sage
from student
where sage between 20 and 22;
order by 子句
select sno,grade
from sc
where cno='1'
order by grade desc;   --按grade降續(xù)排列輸出

select sno,grade
from sc
where cno='1'
order by 2 desc;  --按第二列降續(xù)排列輸出

select sno,grade as 成績
from sc
where cno='1'
order by 成績 desc;  --按別名成績降續(xù)排列輸出

select * 
from student
order by sdept,sage desc;  --按sdept升續(xù)排列乡翅,同sdept的,按照sage降續(xù)排列罪郊。

select count(*)
from student;  --統(tǒng)計student表所有人數(shù)蠕蚜。

select avg(grade)
from sc
where cno='1';  --查詢平均值

select max(grade)
from sc
where cno='1';   --查詢最大值

數(shù)據(jù)統(tǒng)計分組
select cno,count(sno)
from sc
group by cno;  --輸出對應(yīng)cno值的統(tǒng)計量

select sno,count(*)
from sc
group by sno;  --查詢每個sno對應(yīng)的cno數(shù)量

選組條件:
select sno 
from sc
group by sno
having count(*)>2;  --查詢cno統(tǒng)計超過2個的sno,先進行分組統(tǒng)計悔橄,然后根據(jù)分組的結(jié)果進行篩選

where
having靶累,用在group by后面

分組查詢效果對比:

未分組將作用于整個查詢結(jié)果:
select max(grade)
from sc;  --輸出總的最大值

分組后,函數(shù)將作用于每個組
select sno,max(grade)
from sc
group by sno;  --輸出的是每個分組的最大值橄维,而不是總的

image.png

例如:

select sno,avg(grade)  --如果這里添加了cno一起查詢尺铣,就是錯誤的
from sc
group by sno;

image.png

例如:

select sno,avg(grade)
from sc
group by sno
having avg(grade)>70;  --如果把avg(grade)換為grade就是錯誤的。
image.png

例如:

selecr sno,avg(grade)
from sc
where grade<70  --這個位置不能用avg
group by sno;

select count(*)
from student
group by sdept;

select sum(grade)
from sc
group by sno;

select sno,count(*)
from sc
where grade >=90
group by sno
having count(*)>2;  --查詢sno和cno的數(shù)量争舞,要求有兩個以上grade大于90的數(shù)量凛忿。順序是:查詢出grade>=90的記錄,按照sno分組竞川,按count(*)>2分組店溢,輸出sno,count(*)

集合查詢:

image.png
select cno 
from sc
where sno='001'
UNION
select cno 
from sc
where sno='002';  --講兩個查詢合并輸出委乌,輸出已經(jīng)去重床牧,滿足其中一個的即可,并集

select cno 
from sc
where sno='001'
INTERSECT
select cno 
from sc
where sno='002';  --必須同時滿足兩個條件的查詢遭贸。交集

select sno 
from sc
MINUS
select sno 
from sc
where cno='002';  --差集戈咳,查詢結(jié)果中,去掉cno=‘002’的數(shù)據(jù)
分組
dual表
select abs(999) from dual;  --返回999的絕對值

select mod(x,y) from dual;  --返回x除以y的余數(shù),若y=0著蛙,則返回x


alter session set NLS_DATE_FORMAT='YYYY-MM-DD';--設(shè)置當(dāng)前會話的日期格式為年月日删铃。

select sysdate from dual;

select to_char(sysdate,'YYYY') from dual;

轉(zhuǎn)換函數(shù)
字符函數(shù)
空值函數(shù)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市踏堡,隨后出現(xiàn)的幾起案子猎唁,更是在濱河造成了極大的恐慌,老刑警劉巖顷蟆,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件诫隅,死亡現(xiàn)場離奇詭異,居然都是意外死亡帐偎,警方通過查閱死者的電腦和手機逐纬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來肮街,“玉大人风题,你說我怎么就攤上這事〖蹈福” “怎么了沛硅?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵,是天一觀的道長绕辖。 經(jīng)常有香客問我摇肌,道長,這世上最難降的妖魔是什么仪际? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任围小,我火速辦了婚禮,結(jié)果婚禮上树碱,老公的妹妹穿的比我還像新娘肯适。我一直安慰自己,他們只是感情好成榜,可當(dāng)我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布框舔。 她就那樣靜靜地躺著,像睡著了一般赎婚。 火紅的嫁衣襯著肌膚如雪刘绣。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天挣输,我揣著相機與錄音纬凤,去河邊找鬼。 笑死撩嚼,一個胖子當(dāng)著我的面吹牛停士,可吹牛的內(nèi)容都是我干的挖帘。 我是一名探鬼主播,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼恋技,長吁一口氣:“原來是場噩夢啊……” “哼肠套!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起猖任,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎瓷耙,沒想到半個月后朱躺,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡搁痛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年长搀,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鸡典。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡源请,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出彻况,到底是詐尸還是另有隱情谁尸,我是刑警寧澤,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布纽甘,位于F島的核電站良蛮,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏悍赢。R本人自食惡果不足惜决瞳,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望左权。 院中可真熱鬧皮胡,春花似錦、人聲如沸赏迟。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽瀑梗。三九已至烹笔,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間抛丽,已是汗流浹背谤职。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留亿鲜,地道東北人允蜈。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓冤吨,卻偏偏與公主長得像,于是被迫代替她去往敵國和親饶套。 傳聞我的和親對象是個殘疾皇子漩蟆,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,722評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法妓蛮,內(nèi)部類的語法怠李,繼承相關(guān)的語法,異常的語法蛤克,線程的語...
    子非魚_t_閱讀 31,581評論 18 399
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理捺癞,服務(wù)發(fā)現(xiàn),斷路器构挤,智...
    卡卡羅2017閱讀 134,599評論 18 139
  • 人無好壞髓介,只有強弱;事無對錯筋现,只談利弊唐础。
    壞壞蚊子閱讀 194評論 0 1
  • 非動畫 作個總結(jié)吧一膨, 希望回答的朋友先看一看這個列表 《王牌酒保》 《樹影斑駁之國》 《一拳超人》 《火鳳燎原》 ...
    Natsu閱讀 3,530評論 12 44