函式及分組統計和資料庫備份,恢復
函式分組統計
合計函式-COUNT
- 基本句型:
SELECT COUNT(*)|COUNT(列名) FROM tablename [WHERE where_definition];
(COUNT和後面的括號之間沒有空格,COUNT(col)不會計入NULL) - 統計一個班共有多少學生?
SELECT COUNT(*) FROM students;
- 統計數學成績大於90的學生有多少個?
SELECT COUNT(*) FROM students WHERE math > 90;
- 統計總分大於250的人數有多少?
SELECT COUNT(*) FROM students WHERE (chinese + english + math) > 90;
合計函式-SUM
- 注意:sum僅對數值起作用,否則會報錯;對多列求和,“,”號不能少。(sum(A+B+C),A,B,C為三列,如果某行記錄中A列值為NULL,則不統計這行。)
- 基本句型:
SELECT SUM(列名){,SUM(列名)...} FROM tablename [WHERE where_definition]
- 統計一個班級數學總成績
SELECT SUM(math) FROM students;
- 統計一個班級語文、英語、數學各科的總成績
SELECT SUM(chinese),SUM(english),SUM(math) FROM students;
- 統計一個班級語文、英語、數學的成績總和
SELECT SUM(chinese + english + math) FROM students;
- 統計一個班級語文成績平均分
SELECT SUM(chinese)/COUNT(*) FROM students;
合計函式-AVG
- AVG函式返回滿足WHERE條件的一列的平均值
- 基本句型:
SELECT AVG(col) FROM table;
- 求一個班級數學平均分
SELECT AVG(math) FROM students;
(AVG不會計入NULL) - 求一個班級總分平均分
SELECT AVG(chinese + english + math) FROM students;
合計函式-MAX/MIN
- 基本句型:(MAX/MIN函式返回滿足WHERE條件的一列的最大/最小值)
SELECT MAX(col)/MIN(col) FROM table [WHERE where_definition];
- 求班級最高分和最低分(數值範圍在統計中特別有用)
SELECT MAX(chinese + english + math) FROM students;
SELECT MIN(chinese + english + math) FROM students;
分組語句-GROUP BY [HAVING]
- 使用GROUP BY子句對列進行分組
基本句型:SELECT col1,col2... FROM table GROUP BY column;
注意:可以使用“`”(英文輸入狀態下ESC按鍵下的那個按鍵)把關鍵字包含起來,當作普通字串對待。比如:order
可以作為表名存在,而不會被認為ORDER關鍵字。(但是不推薦)
- 對訂單中商品歸類後,顯示每一類商品的總價
SELECT product,SUM(price) FROM t_order GROUP BY product;
- 使用having子句過濾(GROUP BY後不能使用WHERE )
查詢購買了幾類商品,並且每類總價大於100的商品SELECT product,SUM(price) FROM t_order GROUP BY product HAVING SUM(price) > 100;
一些函式
資料庫備份,恢復
備份
- 在MySQL的bin檔案裡有一個mysqldump.exe程式。(在dos命令模式下執行命令)
mysqldump -h localhost -u root -p mydb1>d:\\mydb1.sql
(兩個“\”是因為“\m”是轉義字元)
恢復
- 先建立資料庫名,並選擇資料庫
方式一:SOURCE d:\\mydb1.sql;
(在mysql下執行該命令)
方式二:mysql -u root -p mydb1<d:\\mydb1.sql
(在dos命令列下執行該命令)
相關文章
- Mysql資料庫備份及恢復MySql資料庫
- 【備份恢復】從備份恢復資料庫資料庫
- 備份和恢復postgreSQL資料庫SQL資料庫
- 資料庫資料的恢復和備份資料庫
- PostgreSql資料庫的備份和恢復SQL資料庫
- Mongo 資料庫備份和恢復命令Go資料庫
- 備份和恢復SQL Server資料庫SQLServer資料庫
- 使用innobackupex線上增量備份和再增量備份及恢復mysql資料庫MySql資料庫
- 備份與恢復:polardb資料庫備份與恢復資料庫
- vivo 資料庫備份恢復系統演化資料庫
- 使用Mysqldump備份和恢復MySQL資料庫MySql資料庫
- 非RMAN熱備份資料庫和恢復資料庫
- db2備份和恢復資料庫DB2資料庫
- 【備份恢復】noarchive模式下使用增量備份恢復資料庫Hive模式資料庫
- [資料庫] Navicat for MySQL定時備份資料庫及資料恢復資料庫MySql資料恢復
- 磁碟資料恢復及備份工具資料恢復
- 【備份恢復】在 ARCHIVELOG 模式下執行資料庫還原和恢復操作(源庫備份源庫恢復)Hive模式資料庫
- Oracle資料庫的冷備份及冷備份異地恢復方法Oracle資料庫
- ClickHouse資料庫單機安裝及備份恢復資料庫
- 資料庫的備份與恢復分析及例項資料庫
- 基於tsm的oracle資料庫備份及恢復Oracle資料庫
- Oracle資料庫的備份及恢復策略研究(轉)Oracle資料庫
- 達夢資料庫備份恢復資料庫
- postgresql備份與恢復資料庫SQL資料庫
- mongo資料庫備份與恢復Go資料庫
- 資料庫的備份與恢復資料庫
- Informix資料庫備份與恢復ORM資料庫
- SQL Server 資料庫備份還原和資料恢復SQLServer資料庫資料恢復
- DB2資料庫的備份和恢復DB2資料庫
- oracle資料庫備份和恢復的內容Oracle資料庫
- 2 Day DBA-管理方案物件-執行備份和恢復-資料庫備份和恢復概念物件資料庫
- rman資料庫全庫備份與恢復資料庫
- 2 Day DBA-管理方案物件-執行備份和恢復-資料庫備份和恢復概覽物件資料庫
- 【oracle】統計資訊的恢復和備份Oracle
- 直接透過備份恢復資料庫資料庫
- mysql的資料庫備份與恢復MySql資料庫
- oracle資料庫的備份與恢復Oracle資料庫
- 資料庫備份與恢復技術資料庫