進(jìn)行篩選的基本運(yùn)算符號(hào):
在臨高等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專(zhuān)注、極致的服務(wù)理念,為客戶(hù)提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作按需策劃設(shè)計(jì),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站建設(shè),成都營(yíng)銷(xiāo)網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站建設(shè),臨高網(wǎng)站建設(shè)費(fèi)用合理。
--查詢(xún)?cè)滦礁哂?000的員工的姓名和其月薪
--查詢(xún)員工SMITH的員工信息
--關(guān)鍵字,表名,列名:大小寫(xiě)是不敏感(隨意寫(xiě))
--數(shù)據(jù):大小寫(xiě)是敏感(不能隨意寫(xiě))
--查詢(xún)不在20號(hào)部門(mén)工作的員工信息
--查詢(xún)?cè)?0號(hào)部門(mén)工作并且月薪高于2000的員工信息
--查詢(xún)職位是MANAGER或者月薪不低于3000的員工信息
--查詢(xún)?cè)?0號(hào)部門(mén)工作月薪低于2000并且職位不是CLERK的員工信息
--查詢(xún)?cè)?0號(hào)部門(mén)工作或(20號(hào)部門(mén)工作并且月薪不低于1500)的員工信息
--and的優(yōu)先級(jí)要高于or 如果兩者混合使用,需要注意優(yōu)先級(jí)的問(wèn)題
--加括號(hào)解決優(yōu)先級(jí)問(wèn)題
--SQL注入:利用了and的優(yōu)先級(jí)高于or完成無(wú)密碼進(jìn)行登錄
--SQL片段:通過(guò)在密碼框中輸入下方的SQL片段,更改了原有SQL語(yǔ)句的邏輯 ' or lname = 'admin --or前的邏輯:賬號(hào)隨意,密碼為空 (登錄失?。?--or后的邏輯:用戶(hù)名是admin的賬號(hào) (調(diào)取了admin的信息)
--1.查詢(xún)10號(hào)部門(mén)職位是MANAGER的員工信息
--2.查詢(xún)?cè)滦降陀?000或月薪高于3000的員工信息
--3.查詢(xún)員工編號(hào)是7902的員工的所有下屬的員工信息
--4.查詢(xún)職位是CLERK或SALESMAN,并且月薪不低于1000的員工信息
--5.查詢(xún)?cè)率杖氩坏陀?500的員工信息
--6.查詢(xún)30號(hào)部門(mén)年收入低于10000的員工信息
--7.查詢(xún)員工SCOTT的月薪,獎(jiǎng)金和月收入
--8.查詢(xún)?cè)?982年之前入職的員工信息(選做)
--相當(dāng)于 = A and = B
--查詢(xún)?cè)滦皆?000-2000區(qū)間的員工信息
--82年入職的員工
--like '特定字符'
-- 特定字符:由轉(zhuǎn)義字符和搜索文本組成
-- 轉(zhuǎn)義字符: %: 0-n個(gè)字符(任意長(zhǎng)度的任意字符)
-- : 1個(gè)字符(1個(gè)長(zhǎng)度的任意字符)
-- 比如 姓李 特定字符的寫(xiě)法 '李%'
-- 第二個(gè)字符是哈 特定字符的寫(xiě)法 ' 哈%'
--查詢(xún)員工名字首字母是S的員工
--查詢(xún)名字中倒數(shù)第2個(gè)字符是T的員工
--查詢(xún)名字中包含字母T的員工
--查詢(xún)名字中包含兩個(gè)字母T的員工
--查詢(xún)有兩個(gè)連續(xù)的T
--查詢(xún)名字中有%字符的員工
--聲明標(biāo)識(shí)字符
--相當(dāng)于 = A or = B or = C...
--查詢(xún)?cè)?0號(hào)部門(mén)或20號(hào)部門(mén)工作的員工
--查詢(xún)?cè)?0號(hào)部門(mén)工作或月薪高于1200的員工
-- = null 無(wú)法篩選任何數(shù)據(jù)
-- is null 篩選null值
-- not between A and B 不在A與B區(qū)間內(nèi)
-- not like '%A%' 名字里面沒(méi)有A
-- not in(A,B,C) 不是A,B,C其中之一
-- is not null 不為null
--查詢(xún)?cè)滦讲辉?000-2000區(qū)間內(nèi)并且名字中不包含字母T的員工信息
--order by 列名 或 列別名 或 表達(dá)式 或 列序號(hào)
--ASC 升序 由小到大
--DESC 降序 由大到小
--不寫(xiě) 默認(rèn)是升序
--## 書(shū)寫(xiě)順序:select...from...where...order by...
--## 執(zhí)行順序:from...where...select...order by...
--查詢(xún)所有員工的信息,按照月薪的升序排序
--再按照月薪的降序排序
--利用表達(dá)式排序
--利用列別名進(jìn)行排序
--利用列序號(hào)進(jìn)行排序(第4列)
--排序的原則:
--1.數(shù)值按照數(shù)值的大小
--2.文本按照字典順序
--3.日期按照未來(lái)的大
--#####order by 可以修飾多個(gè)列
-- ## order by A, B 先A的升序排序,如果A相同,再按B的升序排序
-- ## order by A desc, B desc 先A的降序排序,如果A相同,再按B的降序排序
--查詢(xún)?cè)滦礁哂?000的員工,按照部門(mén)的升序排序,再按照入職日期降序排序
--推薦在order by中使用列名或列別名
--1.查詢(xún)名字中包含字母T,并且月薪在1500-3000之間的員工姓名和月薪
--2.查詢(xún)公司的BOSS信息(mgr值為null的人)
--3.查詢(xún)員工姓名,月薪,獎(jiǎng)金,年收入,按照年收入降序進(jìn)行排序顯示
--4.查詢(xún)職位中包含MAN并且有獎(jiǎng)金收入(不是null不是0)的員工信息
--5.查詢(xún)?cè)谠?981年期間入職的員工信息,并按照月薪降序排序
--6.查詢(xún)員工信息,并按照職位升序,部門(mén)升序進(jìn)行排序顯示
--7.查詢(xún)不在10號(hào)或20號(hào)部門(mén)工作,月薪低于1500的員工信息
--8.查詢(xún)所有的職位名稱(chēng),去掉重復(fù)后按照名稱(chēng)的升序排序顯示
--9.查詢(xún)員工SCOTT和ADAMS的員工信息
--10.查詢(xún)年收入高于45000的員工信息,并按照年收入降序排序顯示
這是oracle中默認(rèn)用戶(hù)scott下的表。
本問(wèn)題涉及到三張表,數(shù)據(jù)分別如下:
emp表:
dept表:
salgrade表:
按題目要求,sql語(yǔ)句如下:
select b.dname 部門(mén)名稱(chēng),b.counts 部門(mén)員工數(shù),b.avgsal 部門(mén)平均工資,b.minsal 部門(mén)最低工資,a.ename 姓名,c.grade 工資等級(jí)
from emp a,
(select b.deptno,b.dname,count(*) counts,round(avg(sal),2) avgsal,min(sal) minsal
from emp a,dept b,salgrade c
where a.deptno=b.deptno and a.deptno=b.deptno
and a.sal between c.losal and hisal
group by ?b.deptno,b.dname) b,
salgrade c
where a.sal=b.minsal
and a.sal between c.losal and c.hisal
結(jié)果如圖:
select 工資級(jí)別,sum(工資) from 工資表 group by 工資級(jí)別
這樣就出來(lái)了