《數(shù)據(jù)庫(kù)應(yīng)用與管理》 課件 項(xiàng)目5 數(shù)據(jù)處理與視圖_第1頁(yè)
《數(shù)據(jù)庫(kù)應(yīng)用與管理》 課件 項(xiàng)目5 數(shù)據(jù)處理與視圖_第2頁(yè)
《數(shù)據(jù)庫(kù)應(yīng)用與管理》 課件 項(xiàng)目5 數(shù)據(jù)處理與視圖_第3頁(yè)
《數(shù)據(jù)庫(kù)應(yīng)用與管理》 課件 項(xiàng)目5 數(shù)據(jù)處理與視圖_第4頁(yè)
《數(shù)據(jù)庫(kù)應(yīng)用與管理》 課件 項(xiàng)目5 數(shù)據(jù)處理與視圖_第5頁(yè)
已閱讀5頁(yè),還剩33頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

項(xiàng)目五

數(shù)據(jù)處理與視圖2023年2月MySQL運(yùn)算符和函數(shù)目錄Content1創(chuàng)建和使用視圖2項(xiàng)目導(dǎo)言零經(jīng)過分析處理進(jìn)行簡(jiǎn)化,將一系列復(fù)雜的數(shù)據(jù),減少為幾個(gè)能起到關(guān)鍵數(shù)值的數(shù)據(jù)。歸納分析出能起到有描述作用的數(shù)值,又代表性的數(shù)值的操作便是數(shù)據(jù)處理。通過數(shù)據(jù)處理與試圖,我們面對(duì)大量的數(shù)據(jù)的時(shí)候,可以通過幾個(gè)代表性的數(shù)據(jù),大概知道數(shù)據(jù)的整體情況,讓我們一起跟隨本項(xiàng)目,一起來了解一下吧。學(xué)習(xí)目標(biāo)零知識(shí)目標(biāo)了解MySQL運(yùn)算符和函數(shù)的概念;熟悉使用運(yùn)算符與函數(shù)處理數(shù)據(jù);了解JSON與窗口函數(shù)的使用方法;掌握視圖的設(shè)計(jì)與創(chuàng)建;熟悉查看并修改或刪除視圖技能目標(biāo)具備使用運(yùn)算符與函數(shù)處理數(shù)據(jù)的能力;具備獨(dú)立使用聯(lián)合查詢表的能力。素養(yǎng)目標(biāo)具備精益求精、堅(jiān)持不懈的精神;具備團(tuán)隊(duì)協(xié)作能力;具備靈活的思維和處理分析問題的能力;具備責(zé)任心。任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹認(rèn)識(shí)和使用運(yùn)算符任務(wù)技能運(yùn)算符認(rèn)識(shí)和使用函數(shù)函數(shù)JSON函數(shù)常用的JSON函數(shù)窗口函數(shù)常用的窗口函數(shù)系統(tǒng)函數(shù)常用的系統(tǒng)函數(shù)任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹1認(rèn)識(shí)和使用運(yùn)算符運(yùn)算符用法說明+加法運(yùn)算,求兩個(gè)變量或表達(dá)式的和-減法運(yùn)算,求兩個(gè)變量或表達(dá)式的差*乘法運(yùn)算,求兩個(gè)變量或表達(dá)式的積/除法運(yùn)算,求兩個(gè)變量或表達(dá)式的商%取模運(yùn)算,求兩個(gè)變量或表達(dá)式相除的余數(shù),如5%2的值為1①算術(shù)運(yùn)算符任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹②比較運(yùn)算符運(yùn)算符用法說明>

大于,如3>2,值為true<

小于,如3<2,值為false=等于,如3=2,值為false>=大于等于,如3>=2,值為true<=小于等于,如3<=2,值為false<>

不等于,如3<>2,值為true任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹③邏輯運(yùn)算符運(yùn)算符

用法說明NOT或!非運(yùn)算或取反運(yùn)算,如:?。ǔ煽?jī)<60),表示所有成績(jī)及格的學(xué)生AND或&&與運(yùn)算,如:成績(jī)>=80&&成績(jī)<=100,表示所有成績(jī)80至100分的學(xué)生OR或||或運(yùn)算,如:成績(jī)>=80||成績(jī)<60,表示成績(jī)大于等于80或不及格的學(xué)生任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹2認(rèn)識(shí)和使用函數(shù)(1)數(shù)學(xué)函數(shù)函數(shù)功能函數(shù)功能ABS(x)返回某個(gè)數(shù)的絕對(duì)值ROUND(x)ROUND(x,y)返回距離x最近的整數(shù)返回x保留到小數(shù)點(diǎn)后y位的值PI()返回圓周率SIGN(x)返回x的符號(hào),當(dāng)x分別是負(fù)數(shù)、0、正數(shù)時(shí)返回–1、0、1SQRT(x)返回一個(gè)數(shù)的平方根RADIANS(x)DEGREES(x)將角度轉(zhuǎn)換為弧度將弧度轉(zhuǎn)換為角度這兩個(gè)函數(shù)互為反函數(shù)。MOD(x,y)返回余數(shù)SIN(x)

COS(x)

TAN(x)分別返回一個(gè)角度(弧度)的正弦、余弦和正切值GREATEST()LEAST()返回一組數(shù)的最大值和最小值A(chǔ)SIN(x)

ACOS(x)和ATAN(x)分別返回一個(gè)角度(弧度)的反正弦、反余弦和反正切值。x的取值必須為–1~1FLOOR()CEILING()分別返回小于一個(gè)數(shù)的最大整數(shù)值、大于一個(gè)數(shù)的最小整數(shù)值LOG(x)LOG10(x)返回x的自然對(duì)數(shù)返回x的以10為底的對(duì)數(shù)RAND()RAND(x)返回0~1的隨機(jī)數(shù)POW(x,y)EXP(x)返回x的y次方,即xy返回e的x次方,即ex任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹(2)聚合函數(shù)函數(shù)描述COUNT(expr)用于返回由SELECT語(yǔ)句檢索出來的行的非NULL的數(shù)目。AVG(expr)返回expr的平均值MIN(expr)返回expr的最小值MAX(expr)返回expr的最大值SUM(expr)返回expr的總和任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹(3)日期和時(shí)間函數(shù)函數(shù)描述CURDATE()和CURRENT_DATE()獲取當(dāng)前日期CURTIME()和CURRENT_TIME()獲取當(dāng)前時(shí)間NOW()、LOCALTIME()和SYSDATE()用來獲取當(dāng)前日期和時(shí)間YEAR()分析一個(gè)日期值并獲取其中年的部分QUARTER(d)獲取d值表示本年第幾季度,值的范圍是1~4MONTH()分析一個(gè)日期值并獲取其中關(guān)于月的部分,值的范圍是1~12DAY(

)分析一個(gè)日期值并獲取其中關(guān)于日期的部分,值的范圍是1~31DAYOFYEAR()獲取指定日期在一年的序數(shù)DAYOFWEEK()獲取指定日期在一個(gè)星期的序數(shù)DAYOFMONTH()獲取指定日期一個(gè)月中的序數(shù)DAYNAME(d)返回日期d是星期幾,其顯示為英文,如Monday、Tuesday等。DAYOFWEEK(d)返回日期d是星期幾,1表示星期日,2表示星期一,以此類推。WEEKDAY(d)返回日期d是星期幾,0表示星期一,1表示星期二,以此類推。WEEK(d)和WEEKOFYEAR(d)計(jì)算日期d是本年的第幾個(gè)星期。返回值的范圍是1~53。DAYOFYEAR(d)計(jì)算日期d是本年的第幾天DAYOFMONTH(d)計(jì)算日期d是本月的第幾天。任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹3JSON函數(shù)函數(shù)描述JSON_CONTAINS()查詢json文檔是否在指定path包含指定的數(shù)據(jù),包含則返回1,否則返回0。JSON_CONTAINS_PATH()查詢是否存在指定路徑,存在則返回1,否則返回0。如果有參數(shù)為NULL,則返回NULL。JSON_EXTRACT)從json文檔里抽取數(shù)據(jù)。如果有參數(shù)有NULL或path不存在,則返回NULL。JSON_KEYS()獲取json文檔在指定路徑下的所有鍵值,返回一個(gè)jsonarray。JSON_SEARCH()查詢包含指定字符串的paths,并作為一個(gè)jsonarray返回。如果有參數(shù)為NUL或path不存在,則返回NULL。任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹4窗口函數(shù)語(yǔ)法格式:window_function_name(expression)OVER([partition_defintion][order_definition][frame_definition])任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹函數(shù)分類函數(shù)函數(shù)說明序號(hào)函數(shù)ROW_NUMBER()順序排序RANK()并列排序,會(huì)跳過重復(fù)的序號(hào),比如序號(hào)1、1、3DENSE_RANK()并列排序,不會(huì)跳過重復(fù)的序號(hào),比如序號(hào)1、1、2分布函數(shù)PERCENT_RANK()等級(jí)值百分比CUME_DIST()累積分布值前后函數(shù)LAG(expr,n)返回當(dāng)前行的前n行的expr的值LEAD(expr,n)返回當(dāng)前行的后n行的expr的值首尾函數(shù)FIRST_VALUE(expr)返回第一個(gè)expr的值LAST_VALUE(expr)返回最后一個(gè)expr的值其他函數(shù)NTH_VALUE(expr,n)返回第n個(gè)expr的值NTILE(n)將分區(qū)中的有序數(shù)據(jù)分為n個(gè)桶,記錄桶編號(hào)任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹在myStudent系統(tǒng)中,查詢學(xué)號(hào)為122001的學(xué)生的總分?jǐn)?shù)、最高分?jǐn)?shù)和平均分?jǐn)?shù)。示例:SELECTs_no,c_no,report,SUM(report)OVERwASscore_sum,MAX(report)OVERwASscore_max,AVG(report)OVERwASscore_avgFROMscoreWHEREs_no=122001WINDOWwAS(PARTITIONBYs_noORDERBYc_no);任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹5系統(tǒng)函數(shù)①常用數(shù)學(xué)函數(shù)函數(shù)名功能abs(x)返回x的絕對(duì)值。mod(x,y)返回x除以y的余數(shù)。pi()返回圓周率的值。rand()返回0到1內(nèi)的隨機(jī)數(shù)。sqrt(x)返回x的平方根。任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹②常用字符串函數(shù)函數(shù)名功能ascii(s)返回字符的ASCII值。concat(s1,s2,s3)返回字符串s1,s2,s3連接成一個(gè)新字符串。lower(s)返回字符串中所有字符轉(zhuǎn)換成小寫字母的結(jié)果。upper(s)返回字符串中所有字符轉(zhuǎn)換成大寫字母的結(jié)果。length(s)返回字符串的長(zhǎng)度。任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹③常用日期時(shí)間函數(shù)函數(shù)名功能curdate()返回當(dāng)前系統(tǒng)的日期。now()返回系統(tǒng)當(dāng)前的日期和時(shí)間。year(date)返回日期date的年份。(1000~9999)month(date)返回日期date的月份。(1~12)dayofyear(date)返回日期date是一年中的第幾天(1~366)任務(wù)5-1:MySQL運(yùn)算符和函數(shù)壹在MySQL的命令窗口中,通過查詢分別求一個(gè)數(shù)的絕對(duì)值、返回字符串的長(zhǎng)度、返回輸入日期是一年中的第幾天。示例:selectabs(-3),length('hello'),dayofyear('2022-10-26');5-1:任務(wù)實(shí)施壹函數(shù)查詢查年齡大于18,并且不是信息學(xué)院與外語(yǔ)學(xué)院的員工姓名和性別統(tǒng)計(jì)每位員工的實(shí)際收入查詢年齡在40歲以上的員工信息查詢?cè)?978年出生的員工信息查詢基本工資在3000以上的副教授所在的姓名、部門查詢統(tǒng)計(jì)信息學(xué)院最高基本工資、最低基本工資和基本工資總和任務(wù)5-2:創(chuàng)建和使用視圖貳認(rèn)識(shí)視圖任務(wù)技能視圖創(chuàng)建視圖createview創(chuàng)建視圖查看視圖使用desc語(yǔ)句查看視圖、使用showtablestatus語(yǔ)句查看視圖、使用showcreateview語(yǔ)句查看視圖修改視圖alterview修改視圖刪除視圖delete刪除視圖任務(wù)5-2:創(chuàng)建和使用視圖貳1認(rèn)識(shí)視圖從用戶角度來看,視圖可從一個(gè)特定的角度來查看數(shù)據(jù)庫(kù)中的數(shù)據(jù);從數(shù)據(jù)庫(kù)系統(tǒng)內(nèi)部來看,視圖是由SELECT語(yǔ)句查詢定義的虛擬表;從數(shù)據(jù)庫(kù)系統(tǒng)外部來看,視圖就如同一張表,可對(duì)表進(jìn)行的一般操作,也可以應(yīng)用于視圖,例如查詢、插入、修改和刪除操作等。特點(diǎn)操作篩選表中的記錄。視圖不僅可以簡(jiǎn)化用戶對(duì)數(shù)據(jù)的理解,也可以簡(jiǎn)化他們的操作。那些經(jīng)常被使用的查詢可以被定義為視圖,從而使得用戶不必在以后的每次操作中指定全部的條件;防止未經(jīng)許可的用戶訪問敏感數(shù)據(jù)。用戶通過視圖只能查詢和修改他們所能見到的數(shù)據(jù),但不能操作數(shù)據(jù)庫(kù)特定行和特定列。通過視圖,用戶可以被限制在數(shù)據(jù)的不同子集上,使用權(quán)限可被限制在另一視圖的一個(gè)子集上,或是一些視圖和基本表合并后的子集上;將多個(gè)物理數(shù)據(jù)表抽象為一個(gè)邏輯數(shù)據(jù)表。任務(wù)5-2:創(chuàng)建和使用視圖貳2創(chuàng)建視圖語(yǔ)法格式:create[orreplace]view視圖名[(字段名列表)]asselect語(yǔ)句[with[cascaded|local]checkoption];任務(wù)5-2:創(chuàng)建和使用視圖貳在myStudent數(shù)據(jù)庫(kù)中創(chuàng)建視圖VIEW_COURSE。示例:CREATEORREPLACEVIEWVIEW_COURSEASSELECTC_NO,C_NAMEFROMCOURSE;任務(wù)5-2:創(chuàng)建和使用視圖貳創(chuàng)建名為VIEW_STU視圖。示例:CREATEORREPLACEVIEWVIEW_STUASSELECT*FROMstudents;任務(wù)5-2:創(chuàng)建和使用視圖貳創(chuàng)建視圖VIEW_CJ,包括學(xué)號(hào)、課程名和成績(jī)字段。示例:CREATEVIEWVIEW_CJ(學(xué)號(hào),課程名,成績(jī))ASSELECTstudents.S_NO,C_NAME,reportFROMstudents,course,scoreWHEREstudents.S_NO=score.S_NOANDscore.C_NO=course.C_NO;任務(wù)5-2:創(chuàng)建和使用視圖貳3查看視圖(1)使用desc語(yǔ)句查看視圖語(yǔ)法格式:desc視圖名;任務(wù)5-2:創(chuàng)建和使用視圖貳在學(xué)生成績(jī)管理數(shù)據(jù)庫(kù)myStudent中,查看視圖VIEW_CJ的基本信息示例:descVIEW_CJ;任務(wù)5-2:創(chuàng)建和使用視圖貳(2)使用showtablestatus語(yǔ)句查看視圖語(yǔ)法格式:showtablestatuslike'視圖名';任務(wù)5-2:創(chuàng)建和使用視圖貳在學(xué)生成績(jī)管理數(shù)據(jù)庫(kù)myStudent中,查看視圖VIEW_CJ的基本信息。示例:showtablestatuslikeVIEW_CJ;任務(wù)5-2:創(chuàng)建和使用視圖貳(3)使用showcreateview語(yǔ)句查看視圖語(yǔ)法格式:SHOWCREATEVIEW視圖名;任務(wù)5-2:創(chuàng)建和使用視圖貳在學(xué)生成績(jī)管理數(shù)據(jù)庫(kù)myStudent中,查看視圖VIEW_CJ的基本信息。示例:SHOWCREATEVIEWVIEW_CJ;任務(wù)5-2:創(chuàng)建和使用視圖貳4修改視圖在MySQL中,修改視圖是指修改數(shù)據(jù)庫(kù)中已經(jīng)存在的視圖的定義,而不是修改視圖中的數(shù)據(jù)。語(yǔ)法格式:alterview視圖名[(字段名列表)]asselect語(yǔ)句[with[cas

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論