【正文】
一、navicat的引入:(第三方可視化的用戶端,友善mysql資料庫的管理和維護)
navicattm是一套快速、可靠并價格相宜的資料庫管理工具,專為簡化資料庫的管理及降低系統管理成本而設。它的設計符合資料庫管理者、開發人員及中小企業的需要。navicat 是以直覺化的圖形使用者界面而建的,讓你可以以安全并且簡單的方式建立、組織、通路并共用資訊。
navicat 是聞名世界、廣受全球各大企業、政府機構、教育機構所信賴,更是各界從業員每天必備的工作夥伴,被公認為全球最受歡迎的mysql前端使用者介面工具。它可以用來對本機或遠端的 mysql、sql server、sqlite、oracle 及 postgresql 資料庫進行管理及開發。
二、navicat的安裝:
下載下傳所需要的版本即可。
安裝之後,打開的界面如下:
我們可以在navicate的查詢編輯器中輸入指令,然後點選“運作”,檢視結果:
二、常見聚合函數:(聚合即彙總的意思)
常見聚合函數如下:
1、avg:求平均值
2、count
3、min / max
4 sum
我們拿下面的這張表舉例:
解釋:傳回expr 的平均值。 distinct 選項可用于傳回 expr的不同值的平均值。
舉例:查詢年齡的平均值。指令及結果如下:
2、count(expr):傳回select語句檢索到的行的數目。
select count(*) from tab_teacher; --傳回檢索行的數目,不論其是否包含null值;
select count(name) from tab_teacher; --傳回select語句檢索到的行中非null值的數目.
3、min/max:求最小、最大值。
4、sum:求和
三、控制流程函數:
常見的控制流程函數如下:
case
if
ifnull
nullif
我們依舊用下面的這張表格來舉例:
1、case:
解釋:用value值來比對,如果value1和value比對,則傳回result1 ,如果value2和value比對,則傳回result2,以此類推;否則,傳回else後的result3。;如果沒有else部分的值,則傳回值為null。這種句型類似于java當中的switch···case···default···。
舉例:
2、if:
解釋:如果表達式expr1是true ,則 if()的傳回值為expr2; 否則傳回值則為 expr3。類似于三目運算符。
3、ifnull:
解釋:假如expr1不為null,則函數傳回值為 expr1; 否則,如果如expr1為null,函數傳回值為expr2。
4、nullif:
解釋:如果expr1 = expr2成立,那麼傳回值為null,否則傳回值為expr1