分頁查詢:html
通常的分頁查詢使用簡單的 limit 子句就能夠實現。java
SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset
LIMIT 子句能夠被用於指定 SELECT 語句返回的記錄數。需注意如下幾點:sql
TOP():函數
TOP 子句用於規定要返回的記錄的數目。
對於擁有數千條記錄的大型表來講,TOP 子句是很是有用的。學習
語法:ui
SELECT TOP number|percent column_name(s) FROM table_name
LIKE:code
通配符:htm
% | 替代一個或多個字符 |
---|---|
_ | 僅替代一個字符 |
[charlist] | 字符列中的任何單一字符 |
1或者[!charlist] | 不在字符列中的任何單一字符 |
LIKE 操做符用於在 WHERE 子句中搜索列中的指定模式。get
語法:it
SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern
子查詢
外部查詢爲父查詢,內部查詢爲子查詢。
1.做爲查詢條件使用 where
--1.子查詢做爲條件 --查詢學號在王五前邊的同窗 select * from StuInfo where stuid < (select stuid from StuInfo where stuname='王五')
2.做爲臨時表使用 from
--子查詢3:stuinfo、StuMarks都做爲子查詢 select stuname,subject,score from (select * from stuinfo where stuname = '李四') s1, (select * from stumarks where score > 80) s2 where s1.stuid = s2.stuid
3.做爲列使用 select
--3.子查詢做爲列使用 --查詢全部學員html成績,沒有成績以null顯示 select s.*, (select score from StuMarks where subject='html' and s.stuid=StuMarks.stuid) as '成績' from StuInfo s
在條件查詢中使用 '<' , '>' , '='後+查詢句只能查一列。
in和not in 一般在where子句中使用,在in和not in後接的子查詢中,能夠有多個值出現,但必須只能有一列
--in 符合in後面全部條件都可以查詢出來,一系列肯定的值或表中的某一列 --查詢學號爲1和3的學員信息 --select * from stuinfo where stuid = 1 or stuid = 3 select * from stuinfo where stuid in (1,3)
--not..in 對in取反,不符合in後面全部條件都可以查詢出來 --查詢學號除了1和3的之外的學員信息 select * from stuinfo where stuid not in (1,3)
使用SOME,ANY,ALL進行子查詢:
1.在SQL查詢中,SOME,ANY,ALL後必須跟子查詢。
2.在SQL查詢中,SOME,ANY,ALL的做用是同樣的,表示其中的任何一項。ALL則表示其中的全部的項。
--SOME、 ANY、 ALL後必須跟子查詢 --SOME 和 ANY 的做用是同樣的,表示其中的任何一項 select * from StuInfo where stuid > any(select stuid from StuInfo where stuid>1) select * from StuInfo where stuid > some(select stuid from StuInfo where stuid>1) --all表示其中的全部的項 select * from StuInfo where stuid > all(select stuid from StuInfo where stuid>1)
compute 聚合技術
1.使用了comput進行總計算後的查詢獲得了兩個結果集,第一個結果集返回查詢前面的查詢明細,後一個結果返回彙總的結果,咱們也能夠在compute子句中添加多個彙總計算表達式。
COMPUT子句須要下列信息:
①可選BY關鍵字。它基於每一列計算指定的行聚合。
②行聚合函數名稱。包括SUM,AVG,MIN,MAX或COUNT。
③要對其執行行聚合函數的列。
例:
--對信息進行查詢並統計 select * from StuMarks where subject='html' compute max(score),min(score),avg(score) --對信息進行分組查詢並統計 select * from StuMarks order by stuid desc compute avg(score),sum(score) by stuid
謝謝你們閱讀,若是想要知道更多java基礎知識,能夠戳我一塊兒交流學習!