最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

第八章SQLServer 2012函數(shù)

2019-10-14 23:55 作者:游戲理想國  | 我要投稿


SQL Server 提供了內(nèi)置函數(shù)幫助用戶執(zhí)行各種操作.內(nèi)置函數(shù)不能修改,可以在T-SQL語句中使用。

內(nèi)置函數(shù)包括:

? 聚合函數(shù)、數(shù)學(xué)函數(shù)、配置函數(shù)、時(shí)間和日期函、字符串函數(shù)、排名函數(shù),等等。

1、聚合函數(shù)

AVG()--平均值

COUNT()--返回行中項(xiàng)目的數(shù)量

MAX()--最大值

MIN()--最小值

SUM()--求和

2、數(shù)學(xué)函數(shù)

ABS (x)--返回絕對值

CEILING(x)--返回大于或等于所給數(shù)字的最小整數(shù)

PI()--pi值

POWER (x,y)--返回x的y次方

RAND ()--返回~1之間的隨機(jī)數(shù)

3、配置函數(shù)

SELECT@@VERSION --獲取當(dāng)前數(shù)據(jù)庫版本

SELECT@@LANGUAGE --當(dāng)前語言

SQLServer 2005 函數(shù)

4、時(shí)間函數(shù)

selectgetdate() ? --當(dāng)前時(shí)間

selectday(getdate()) ? --取出天

selectmonth(getdate()) ? --取出月

selectyear(getdate()) ? --取出年

selectdateadd(d,3,getdate()) as wawa_dateadd --加三天, ?‘d’表示天,‘m’表示月,‘yy’表示年

selectdatename(d,'2010-07-15') ? --取出時(shí)間的某一部分

YearYy yyyy 年1753 ~ 9999

QuarterQq q 季1 ~ 4

MonthMm m 月1 ~ 12

Dayof year Dy y 一年的日數(shù),一年中的第幾日1-366

DayDd d 日,1-31

WeekdayDw w 一周的日數(shù),一周中的第幾日1-7

WeekWk ww 周,一年中的第幾周0 ~ 51

HourHh h 時(shí)0 ~ 23

MinuteMi n 分鐘0 ~59

SecondSs s 秒0 ~ 59

MillisecondMs - 毫秒0 ~ 999

5、字符串函數(shù)

SelectLEN('str1111')--返回字符串的字符個(gè)數(shù)

Selectlower('ABC'),lower('Abc'),upper('Abc'),upper('abc') --轉(zhuǎn)換大小寫

selectltrim(' ? ? ? ? ? 左邊沒有空格') ?--去空格

selectrtrim('右邊沒有空格 ? ') --去空格

selectltrim(rtrim(' ? ?左右都沒有空格 ? ')) --去空格

selectleft('sql server',3),right('sql server',6) --取左或者取右

Selectreplace('原字符串','原','這是一個(gè)')--字符串替換

Selectreplicate('go',5)--指定的次數(shù)重復(fù)字符

selectreverse('這是字符串')--將定字符串返序排列

selectsubstring('這是一個(gè)原字符串',2,3)--指定截取指字字符串

6、排名函數(shù)

rank()返回結(jié)果集的分區(qū)內(nèi)每行的排名

rank()over (order by 列名)

  1. 行號函數(shù)

在分頁功能中,記錄需分頁顯示,需要row_number()函數(shù)標(biāo)記行號。


ROW_NUMBER()over(order by id)

  1. sql for xml

FOR XML PATH有的人可能知道有的人可能不知道,其實(shí)它就是將查詢結(jié)果集以XML形式展現(xiàn),有了它我們可以簡化我們的查詢語句實(shí)現(xiàn)一些以前可能需要借助函數(shù)活存儲(chǔ)過程來完成的工作。那么以一個(gè)實(shí)例為主.

一.FORXML PATH 簡單介紹

那么還是首先來介紹一下FORXML PATH ,假設(shè)現(xiàn)在有一張興趣愛好表(hobby)用來存放興趣愛好,表結(jié)構(gòu)如下:

接下來我們來看應(yīng)用FORXML PATH的查詢結(jié)果語句如下:

結(jié)果:


由此可見FORXML PATH 可以將查詢結(jié)果根據(jù)行輸出成XML各式!

那么,如何改變XML行節(jié)點(diǎn)的名稱呢?代碼如下: ? ?

結(jié)果一定也可想而知了吧?沒錯(cuò)原來的行節(jié)點(diǎn)<row>變成了我們在PATH后面括號()中,自定義的名稱<MyHobby>,結(jié)果如下:

這個(gè)時(shí)候細(xì)心的朋友一定又會(huì)問那么列節(jié)點(diǎn)如何改變呢?還記的給列起別名的關(guān)鍵字AS嗎?對了就是用它!代碼如下:


那么這個(gè)時(shí)候我們列的節(jié)點(diǎn)名稱也會(huì)編程我們自定義的名稱<MyCode>與<MyName>結(jié)果如下:

噢!既然行的節(jié)點(diǎn)與列的節(jié)點(diǎn)我們都可以自定義,我們是否可以構(gòu)建我們喜歡的輸出方式呢?還是看代碼:

接下來我們來看一個(gè)FORXML PATH的應(yīng)用場景吧!那么開始吧。。。。。。


二.一個(gè)應(yīng)用場景與FORXML PATH應(yīng)用

首先呢!我們在增加一張學(xué)生表,列分別為(stuID,sName,hobby),stuID代表學(xué)生編號,sName代表學(xué)生姓名,hobby列存學(xué)生的愛好!那么現(xiàn)在表結(jié)構(gòu)如下:

這時(shí),我們的要求是查詢學(xué)生表,顯示所有學(xué)生的愛好的結(jié)果集,代碼如下:


結(jié)果如下:


分析:好的,那么我們來分析一下,首先看這句:

這句是通過FORXML PATH 將某一姓名如張三的愛好,顯示成格式為:“愛好1,愛好2,愛好3,”的格式!

那么接著看:

剩下的代碼首先是將表分組,在執(zhí)行FORXML PATH 格式化,這時(shí)當(dāng)還沒有執(zhí)行最外層的SELECT時(shí)查詢出的結(jié)構(gòu)為:

可以看到StuList列里面的數(shù)據(jù)都會(huì)多出一個(gè)逗號,這時(shí)隨外層的語句:SELECTB.sName,LEFT(StuList,LEN(StuList)-1) as hobby 就是來去掉逗號,并賦予有意義的列明!


第八章SQLServer 2012函數(shù)的評論 (共 條)

分享到微博請遵守國家法律
汪清县| 东乡县| 宁强县| 桐梓县| 烟台市| 凤城市| 安庆市| 鄂托克旗| 兴化市| 四平市| 梅河口市| 新沂市| 靖边县| 镇平县| 祁阳县| 什邡市| 永定县| 昌吉市| 泰安市| 胶州市| 阿合奇县| 东阿县| 庄河市| 佛教| 岗巴县| 淮南市| 阜宁县| 马山县| 石台县| 柳州市| 汕尾市| 阳信县| 五台县| 鲁甸县| 四子王旗| 武功县| 丰台区| 郑州市| 高碑店市| 林甸县| 五大连池市|