中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

做h網(wǎng)站怎么才能安全山西搜索引擎優(yōu)化

做h網(wǎng)站怎么才能安全,山西搜索引擎優(yōu)化,網(wǎng)站流量指的是什么意思,上海高端品牌網(wǎng)站建設(shè)文章目錄 第六章:6.函數(shù)6.1 聚合函數(shù)6.2 數(shù)學(xué)函數(shù)6.3 字符串函數(shù)6.4 日期函數(shù)6.4.1 日期格式 6.5 控制流函數(shù)6.5.1 if邏輯判斷語句6.5.2 case when語句 6.6 窗口函數(shù)6.6.1 序號(hào)函數(shù)6.6.2 開窗聚合函數(shù)6.6.3 分布函數(shù)6.6.4 前后函數(shù)6.6.5 頭尾函數(shù)6.6.6 其他函數(shù)6.7 …

文章目錄

    • 第六章:
      • 6.函數(shù)
        • 6.1 聚合函數(shù)
        • 6.2 數(shù)學(xué)函數(shù)
        • 6.3 字符串函數(shù)
        • 6.4 日期函數(shù)
          • 6.4.1 日期格式
        • 6.5 控制流函數(shù)
          • 6.5.1 if邏輯判斷語句
          • 6.5.2 case when語句
        • 6.6 窗口函數(shù)
          • 6.6.1 序號(hào)函數(shù)
          • 6.6.2 開窗聚合函數(shù)
          • 6.6.3 分布函數(shù)
          • 6.6.4 前后函數(shù)
          • 6.6.5 頭尾函數(shù)
          • 6.6.6 其他函數(shù)
          • 6.7 練習(xí)

第六章:

6.函數(shù)

作用:提高代碼重用性和隱藏實(shí)現(xiàn)細(xì)節(jié)

分類

  • 聚合函數(shù)

  • 數(shù)學(xué)函數(shù)

  • 字符串函數(shù)

  • 日期函數(shù)

  • 控制流函數(shù)

  • 窗口函數(shù)

6.1 聚合函數(shù)
  • group_concat()

作用:根據(jù)group by指定的列進(jìn)行分組,并用分隔符分隔,將同一個(gè)分組中的值連接起來,返回一個(gè)字符串結(jié)果,實(shí)現(xiàn)行的合并

語法:group_concat ([distinct] 字段名 [order by 排序字段 asc/desc] [separator ‘分隔符’] )

separator為一個(gè)字符串值,默認(rèn)為逗號(hào)

在這里插入圖片描述

6.2 數(shù)學(xué)函數(shù)
函數(shù)名功能
ABS(x)返回x的絕對(duì)值
CEIL(x)返回大于或等于x的最小整數(shù)
FLOOR(x)返回小于或等于x的最大整數(shù)
GREATEST(expr1, expr2, expr3, …)返回列表中的最大值
LEAST(expr1, expr2, expr3, …)返回列表中的最小值

在這里插入圖片描述

函數(shù)名功能
MAX(expression)返回字段expression中的最大值
MIN(expression)返回字段expression中的最小值
MOD(x,y)返回x除以y后的余數(shù)
PI()返回圓周率 3.141593
POW(x,y)返回x的y次方

在這里插入圖片描述

函數(shù)名功能
RAND()返回0到1的隨機(jī)值
ROUND(x)返回離x最近的整數(shù),遵循四舍五入規(guī)則
ROUND(x,y)返回指定位數(shù)的小數(shù),遵循四舍五入規(guī)則
TRUNCATE(x,y)返回?cái)?shù)值x保留到小數(shù)點(diǎn)后y位的值,不遵循四舍五入規(guī)則

在這里插入圖片描述

6.3 字符串函數(shù)
函數(shù)名功能
CHAR_LENGTH(s)返回字符串s的字符數(shù)
CHARACTER_LENGTH(s)返回字符串s的字符數(shù)
CONCAT(s1,s2,s3,…)s1,s2等多個(gè)字符串合并成一個(gè)字符串
CONCAT_WS(s1,s2,s3,…)同CONCAT函數(shù),每個(gè)字符串之間加上x,x可以是分隔符
FIELD(s,s1,s2,s3,…)返回第一個(gè)字符串s在字符串列表(s1,s2,…)中的位置

在這里插入圖片描述

函數(shù)名功能
LTRIM(s)去除字符串s開始處的空格
MID(s,n,len)從字符串s的n位置開始截取長度為len的子字符串,同SUBSTRING函數(shù)
POSITION(s1 IN s)從字符串s中獲取s1的開始位置
REPLACE(s,s1,s2)字符串s2替代字符串s中的字符串s1
REVERSE(s)字符串s的順序反過來

在這里插入圖片描述

函數(shù)名功能
RIGHT(s,n)返回字符串s的后n個(gè)字符
RTRIM(s)去除字符串s結(jié)尾處的空格
STRCMP(s1,s2)比較s1和s2,若相等返回0,s1>s2返回1,s1<s2返回-1
SUBSTR(s,start,len)從字符串s的start位置開始截取長度為len的子字符串
SUBTRING(s,start,len)從字符串s的start位置開始截取長度為len的子字符串

在這里插入圖片描述

函數(shù)名功能
TRIM(s)去除字符串s開始和結(jié)尾處的空格
UCASE(s)字符串轉(zhuǎn)換為大寫
UPPER(s)字符串轉(zhuǎn)換為大寫
LCASE(s)字符串轉(zhuǎn)換為小寫
LOWER(s)字符串轉(zhuǎn)換為小寫

在這里插入圖片描述

6.4 日期函數(shù)
函數(shù)名功能
UNIX_TIMESTAMP()返回從1970-01-01 00:00:00到當(dāng)前毫秒值
UNIX_TIMESTAMP(DATE_STRING)將制定日期轉(zhuǎn)為毫秒值時(shí)間戳
FROM_UNIXTIME(BIGINT UNIXTIME[, STRING FORMAT])將毫秒值時(shí)間戳轉(zhuǎn)為指定格式日期
CURDATE()返回當(dāng)前日期
CURRENT_DATE()返回當(dāng)前日期

在這里插入圖片描述

函數(shù)名功能
TIMEDIFF(time1, time2)計(jì)算時(shí)間差值
DATE_FORMAT(d, f)按表達(dá)式f的要求顯示日期d
STR_TO_DATE(string, format_mask)將字符串轉(zhuǎn)為日期
DATE_SUB(date, INTERVAL expr type)函數(shù)從日期減去指定的時(shí)間間隔
在這里插入圖片描述

在這里插入圖片描述

6.4.1 日期格式
描述描述
%a縮寫星期名
%b縮寫月名
%c月,數(shù)值
%D帶有英文前綴的月中的天
%d月的天,數(shù)值(00-31)
%e月的天,數(shù)值(0-31)
%f微秒
%H小時(shí)(00-23)
%h小時(shí)(01-12)
%I小時(shí)(01-12)
%i分鐘,數(shù)值(00-59)
%j年的天(001-366)
%k小時(shí)(0-23)
%l小時(shí)(1-12)
%M月名
%m月,數(shù)值(00-12)
%pAM 或 PM
%r時(shí)間,12-小時(shí)(hh:mm:ss AM 或PM)
%S秒(00-59)
%s秒(00-59)
%T時(shí)間,24-小時(shí)(hh:mm:ss)
%U周(00-53)星期日是一周的第一天
%u周(00-53)星期一是一周的第一天
%V周(01-53)星期日是一周的第一天,與%X使用
%v周(01-53)星期一是一周的第一天,與%x使用
%W星期名
%w周的天(0=星期日, 6=星期六)
%X年,其中的星期日是周的第一天,4位,與%V使用
%x年,其中的星期一是周的第一天,4位,與%v使用
%Y年,4位
%y年,2位
6.5 控制流函數(shù)
6.5.1 if邏輯判斷語句
格式含義
IF(expr, v1, v2)若表達(dá)式expr成立,返回結(jié)果v2,否則返回結(jié)果v2
IFNULL(v1, v2)若v1的值不為NULL,返回v1,否則返回v2
ISNULL(expression)判斷表達(dá)式是否為NULL
NULLIF(expr1, expr2)若字符串expr1與expr2字符串相等返回NULL,否則返回expr1

在這里插入圖片描述

6.5.2 case when語句

格式

CASE expression

WHEN conditon1 THEN result1WHEN conditon2 THEN result2....WHEN conditonN THEN resultNELSE result

END

含義:CASE表示函數(shù)開始,END表示函數(shù)結(jié)束。若condition1成立,返回result1,condition2成立,返回result2,當(dāng)全部不成立返回result,而當(dāng)有一個(gè)成立后,后面將不再執(zhí)行

在這里插入圖片描述

6.6 窗口函數(shù)

窗口函數(shù)又被稱為開窗函數(shù)。

非聚合窗口函數(shù)對(duì)于聚合函數(shù)來說,聚合函數(shù)是一組數(shù)據(jù)計(jì)算后返回單個(gè)值,非聚合函數(shù)一次指揮處理一行數(shù)據(jù)。窗口聚合函數(shù)在行記錄上計(jì)算某個(gè)字段的結(jié)果時(shí),可將窗口范圍內(nèi)的數(shù)據(jù)輸入到聚合函數(shù)中,并不改變行數(shù)。
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

語法

windows_function (expr) OVER(PARTITION BY ...    ORDER BY ...frame_clause
)
  • windows_function:窗口函數(shù)名

  • expr:參數(shù)

  • OVER:包含三個(gè)選項(xiàng)

  1. 分區(qū)(PARTITION BY):用于將數(shù)據(jù)行拆分成多個(gè)分區(qū)。若省略PARTITION BY,所有數(shù)據(jù)作為一個(gè)組進(jìn)行計(jì)算

  2. 排序(ORDER BY):用于指定分區(qū)內(nèi)的排序方式

  3. 窗口大小(frame_clause):用于在當(dāng)前分區(qū)內(nèi)指定一個(gè)計(jì)算窗口

6.6.1 序號(hào)函數(shù)
  • ROW_NUMBER()

  • RANK()

  • DENSE_RANK()

作用:實(shí)現(xiàn)分組排序,并添加序號(hào)

語法

row_number() | rank() | dense_rank() over(partition by ...order by ...
)
create table emp(dname varchar(20),ename varchar(20),eid varchar(20),sal double
);insert into emp values('技術(shù)部', '101', 'xiaoming', '3500');
insert into emp values('技術(shù)部', '101', 'xiaowang', '4000');
insert into emp values('技術(shù)部', '101', 'xiaoli', '3600');insert into emp values('運(yùn)營部', '102', 'xiaohua', '3000');
insert into emp values('運(yùn)營部', '102', 'xiaohong', '3100');
insert into emp values('運(yùn)營部', '102', 'xiaolu', '3300');-- 對(duì)每個(gè)部門員工按薪資排序,給出排名
select dname,ename,sal,row_number() over(partition by dname order by sal desc) as rn1,rank() over(partition by dname order by sal desc) as rn2,dense_rank() over(partition by dname order by sal desc) as rn3
from emp;-- 求出每個(gè)部門薪水排前兩名的員工,分組求TOPN
select * from (select dname,ename,sal, dense_rank() over(partition by dname order by sal desc) as rn from emp)t where t.rn <= 2;-- 對(duì)所有員工進(jìn)行全局排序 
select dname,ename,sal,dense_rank() over(partition by dname order by sal desc) as rn from emp;
6.6.2 開窗聚合函數(shù)

SUM, AVG, MIN, MAX

  • 在窗口中每條記錄動(dòng)態(tài)地應(yīng)用聚合函數(shù),可動(dòng)態(tài)計(jì)算在指定地窗口內(nèi)的各種聚合函數(shù)值
create table emp(dname varchar(20),ename varchar(20),eid varchar(20),sal double
);insert into emp values('技術(shù)部', '101', 'xiaoming', '3500');
insert into emp values('技術(shù)部', '101', 'xiaowang', '4000');
insert into emp values('技術(shù)部', '101', 'xiaoli', '3600');insert into emp values('運(yùn)營部', '102', 'xiaohua', '3000');
insert into emp values('運(yùn)營部', '102', 'xiaohong', '3100');
insert into emp values('運(yùn)營部', '102', 'xiaolu', '3300');-- 對(duì)每個(gè)部門員工按薪資排序,給出排名
select dname,ename,sal,row_number() over(partition by dname order by sal desc) as rn1,rank() over(partition by dname order by sal desc) as rn2,dense_rank() over(partition by dname order by sal desc) as rn3
from emp;-- 求出每個(gè)部門薪水排前兩名的員工,分組求TOPN
select * from (select dname,ename,sal, dense_rank() over(partition by dname order by sal desc) as rn from emp)t where t.rn <= 2;-- 對(duì)所有員工進(jìn)行全局排序 
select dname,ename,sal,dense_rank() over(partition by dname order by sal desc) as rn from emp;-- 若沒有ORDER BY排序語句, 默認(rèn)把分組內(nèi)所有數(shù)據(jù)進(jìn)行sum操作
select dname,ename,sal,sum(sal) over(partition by dname order by sal desc) as p1 from emp;
select dname,ename,sal,sum(sal) over(partition by dname ) as p2 from emp;
select dname,ename,sal,sum(sal) over(partition by dname rows between 3 preceding and current row) as p3 from emp;
select dname,ename,sal,sum(sal) over(partition by dname rows between 3 preceding and 1 following) as p4 from emp;
select dname,ename,sal,sum(sal) over(partition by dname rows between current row and unbounded following) as p5 from emp;
select dname,ename,sal,max(sal) over(partition by dname order by sal desc) as p5 from emp;
6.6.3 分布函數(shù)

CUME_DIST 和 PERECENT_RANK

  • CUME_DIST:用于分組內(nèi)小于、等于當(dāng)前rank值的行數(shù)/分組內(nèi)總行數(shù),應(yīng)用于查詢小于等于當(dāng)前薪資(sal)比例
create table emp(dname varchar(20),ename varchar(20),eid varchar(20),sal double
);insert into emp values('技術(shù)部', '101', 'xiaoming', '3500');
insert into emp values('技術(shù)部', '101', 'xiaowang', '4000');
insert into emp values('技術(shù)部', '101', 'xiaoli', '3600');
insert into emp values('技術(shù)部', '101', 'xiaoni', '3500');
insert into emp values('技術(shù)部', '101', 'xiaona', '3400');
insert into emp values('技術(shù)部', '101', 'xiaone', '3300');
insert into emp values('技術(shù)部', '101', 'xiaonl', '3200');insert into emp values('運(yùn)營部', '102', 'xiaohua', '3000');
insert into emp values('運(yùn)營部', '102', 'xiaohong', '3100');
insert into emp values('運(yùn)營部', '102', 'xiaolu', '3300');
insert into emp values('運(yùn)營部', '102', 'xiaolo', '3800');
insert into emp values('運(yùn)營部', '102', 'xiaola', '3700');
insert into emp values('運(yùn)營部', '102', 'xiaole', '3600');
insert into emp values('運(yùn)營部', '102', 'xiaolt', '3000');select dname,ename,sal, cume_dist() over(order by sal) as rn1, -- 沒有partition語句 所有數(shù)位于一組cume_dist() over(partition by ename order by sal) as rn2 
from emp;
  • PERECENT_RANK:用于每行按照公式(rank-1) / (rows-1)進(jìn)行計(jì)算,rank為rank()函數(shù)產(chǎn)生的序號(hào),rows為當(dāng)前窗口的記錄總行數(shù)。不常用。
select dname,ename,sal,rank() over(partition by dname order by sal desc) as rn,percent_rank() over(partition by dname order by sal desc) as rn2from emp;
6.6.4 前后函數(shù)

LAG和LEAD

  • 用于返回位于當(dāng)前行的前n行(LAG(expr, n)或后n行(LEAD(expr, n)的expr值,應(yīng)用于查詢前1名同學(xué)的成績和當(dāng)前同學(xué)成績的差值
 -- LAG select dname,ename,sal,lag(sal,1,3500) over(partition by dname order by sal ) as last_1_sal,lag(sal,2) over(partition by dname order by sal ) as last_2_sal
from emp;-- LEAD select dname,ename,sal,lead(sal,1,3500) over(partition by dname order by sal ) as last_1_sal,lead(sal,2) over(partition by dname order by sal ) as last_2_sal
from emp;
6.6.5 頭尾函數(shù)

FIRST_VALUE和LAST_VALUE

  • 用于返回第一個(gè)(FIRST_VALUE)或最后一個(gè)(LAST_VALUE)的expr值。應(yīng)用于截止到目前,按入職編號(hào)排序查詢第一個(gè)入職和最后一個(gè)入職的員工薪資
select dname, ename, sal, eid, -- 若不指定order by 將會(huì)排序混亂,出現(xiàn)錯(cuò)誤的結(jié)果first_value(sal) over(partition by dname order by eid) as first,last_value(sal) over(partition by dname order by eid) as last 
from emp;
6.6.6 其他函數(shù)

NTH_VALUE(expr, n)和NTILE(n)

  • 用于返回窗口中第n個(gè)expr值。應(yīng)用于截止到當(dāng)前薪資,顯示每個(gè)員工中薪資排第2或3的薪資
-- NTH_VALUE()
-- 查詢各部門截止目前薪資排第2或3的員工個(gè)人信息
select dname, ename, sal, eid, -- 若不指定order by 將會(huì)排序混亂,出現(xiàn)錯(cuò)誤的結(jié)果nth_value(sal,2) over(partition by dname order by eid) as second_sal,nth_value(sal,3) over(partition by dname order by eid) as thrid_sal 
from emp;-- NTILE()
-- 根據(jù)入職編號(hào)將各部門員工分3組
select dname, ename, sal, eid, -- 若不指定order by 將會(huì)排序混亂,出現(xiàn)錯(cuò)誤的結(jié)果ntile(3) over(partition by dname order by eid) as rn
from emp;-- 取出各部門的第一組員工
select * from (select dname, ename, sal, eid, ntile(3) over(partition by dname order by eid) as rn from emp)t 
where t.rn = 1;
6.7 練習(xí)
-- 查詢各部門平均薪水最高的部門名
select a.deptno,a.dname,a.location,avg_sal
fromdept a,(select *from (select *,rank() over(order by avg_sal desc ) rn from(select deptno,avg(sal) avg_sal from emp group by deptno)t1)t2where rn = 1)t3 where a.deptno = t3.deptno;--  查詢員工比所屬領(lǐng)導(dǎo)薪資高的員工個(gè)人信息
create view test_view asselect a.ename ename,a.sal esal,b.ename mgrname,b.sal mgrsal, a.deptno fromemp a,emp b where a.mgr = b.deptnoand a.sal > b.sal;select * from dept a join test_view b on a.deptno = b.deptno;
http://www.risenshineclean.com/news/61822.html

相關(guān)文章:

  • 網(wǎng)站建設(shè)發(fā)布教程視頻長沙網(wǎng)站建設(shè)
  • c語言如何做網(wǎng)站關(guān)鍵詞優(yōu)化seo費(fèi)用
  • 推廣網(wǎng)站的網(wǎng)址和網(wǎng)魚相匹配嘉興關(guān)鍵詞優(yōu)化報(bào)價(jià)
  • 廣州寶盈網(wǎng)絡(luò)科技有限公司網(wǎng)站短視頻平臺(tái)推廣
  • 造價(jià)師在哪個(gè)網(wǎng)站做繼續(xù)教育網(wǎng)絡(luò)營銷課程設(shè)計(jì)
  • 做網(wǎng)站掙錢剛剛剛剛剛剛剛剛剛剛剛剛剛剛
  • 穿衣搭配的網(wǎng)站如何做網(wǎng)絡(luò)營銷簡介
  • 什么時(shí)候能用ipv6做網(wǎng)站全渠道營銷的概念
  • 寧夏回族自治區(qū)建設(shè)廳網(wǎng)站廚師培訓(xùn)機(jī)構(gòu)
  • 廣州網(wǎng)站建設(shè)哪家好楓樹seo
  • 加強(qiáng)網(wǎng)站黨建建設(shè)營銷宣傳策劃方案
  • 做網(wǎng)站 搞流量 賺廣告費(fèi)seo網(wǎng)站優(yōu)化軟件價(jià)格
  • asp動(dòng)態(tài)網(wǎng)站開發(fā)實(shí)訓(xùn)教程杭州百度百科
  • 怎樣用文檔做網(wǎng)站首頁南京網(wǎng)站制作設(shè)計(jì)
  • 富陽網(wǎng)站公司網(wǎng)站推廣網(wǎng)絡(luò)推廣
  • 聊城網(wǎng)站制作公司seo優(yōu)化網(wǎng)絡(luò)公司排名
  • 網(wǎng)站建設(shè)費(fèi)用怎么核算云搜索
  • 網(wǎng)頁設(shè)計(jì)與制作畢業(yè)設(shè)計(jì)怎么寫蘭州網(wǎng)絡(luò)推廣優(yōu)化怎樣
  • 網(wǎng)站運(yùn)營策略搭建網(wǎng)站費(fèi)用是多少
  • 企業(yè)網(wǎng)絡(luò)搭建拓?fù)鋱Dseo每日工作
  • 做液壓的公司網(wǎng)站怎么注冊(cè)電商平臺(tái)
  • 石家莊手機(jī)網(wǎng)站制作多少錢企業(yè)網(wǎng)頁設(shè)計(jì)公司
  • 在線客服系統(tǒng)程序seo快速排名軟件平臺(tái)
  • 做簡單網(wǎng)站需要學(xué)什么軟件有哪些內(nèi)容備案域名購買
  • 南寧網(wǎng)站建設(shè)公司哪家好株洲seo推廣
  • 江陰網(wǎng)站制作智能營銷系統(tǒng)開發(fā)
  • wordpress不支持php7石家莊整站優(yōu)化技術(shù)
  • 黃島開發(fā)區(qū)做網(wǎng)站的公司關(guān)鍵詞的作用
  • 企業(yè)網(wǎng)站托管哪家好萬網(wǎng)域名注冊(cè)查詢網(wǎng)
  • 中國建設(shè)銀行寧波分行網(wǎng)站杭州seo首頁優(yōu)化軟件