版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
字符串函數(shù)本講大綱:字符串函數(shù)概述ASCII(獲取ASCII碼)函數(shù)CHARINDEX(返回字符串的起始位置)函數(shù)LEFT(取左邊指定個(gè)數(shù)的字符)函數(shù)RIGHT(取右邊指定個(gè)數(shù)的字符)函數(shù)LEN(返回字符個(gè)數(shù))函數(shù)REPLACE(替換字符串)函數(shù)REVERSE(返回字符表達(dá)式的反轉(zhuǎn))函數(shù)STR函數(shù)10.SUBSTRING(取字符串)函數(shù)支持網(wǎng)站:字符串函數(shù)概述字符串函數(shù)作用于char、varchar、binary和varbinary數(shù)據(jù)類型以及可以隱式轉(zhuǎn)換為char或varchar的數(shù)據(jù)類型。通常字符串函數(shù)可以用在SQL語(yǔ)句的表達(dá)式中。常用的字符串函數(shù)及說(shuō)明如表4.15所示。表4.15
常用的字符串函數(shù)及說(shuō)明函數(shù)名稱說(shuō)
明ASCII返回字符表達(dá)式最左端字符的ASCII代碼值CHARINDEX返回字符串中指定表達(dá)式的起始位置LEFT從左邊開(kāi)始,取得字符串左邊指定個(gè)數(shù)的字符LEN返回指定字符串的字符(而不是字節(jié))個(gè)數(shù)REPLACE將指定的字符串替換為另一指定的字符串REVERSE返回字符表達(dá)式的反轉(zhuǎn)RIGHT從右邊開(kāi)始,取得字符串右邊指定個(gè)數(shù)的字符STR返回由數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換來(lái)的字符數(shù)據(jù)SUBSTRING返回指定個(gè)數(shù)的字符ASCII(獲取ASCII碼)函數(shù)ASCII函數(shù)返回字符表達(dá)式中最左側(cè)的字符的ASCII代碼值。語(yǔ)法如下:ASCII
(
character_expression
)參數(shù)說(shuō)明:character_expression:char或varchar類型的表達(dá)式。返回類型:int類型。說(shuō)明:ASCII碼共有127個(gè),其中Microsoft
Windows不支持1~7、11~12和14~31之間的字符。值8、9、
10和13分別轉(zhuǎn)換為退格、制表、換行和回車字符。它們并沒(méi)有特定的圖形顯示,但會(huì)依不同的應(yīng)用程序而對(duì)文本顯示有不同的影響。ASCII碼值對(duì)照表如表4.16所示。表4.16ASCII碼值對(duì)照表ASCII碼按鍵ASCII碼按鍵ASCII碼按鍵ASCII碼按鍵0?/FONT>32[space]64@96`1不支持33!65A97A2不支持34"66B98B3不支持35#67C99C4不支持36$68D100D5不支持37%69E101E6不支持38&70F102F7不支持39'71G103G8*
*40(72H104H9*
*41)73I105I10*
*42*74J106j11不支持43+75K107k12不支持44,76L108l13*
*45-77M109m14不支持46.78N110n【例4.39】使用ASCII函數(shù)返回“NXT”的ASCII代碼值,SQL語(yǔ)句及運(yùn)行結(jié)果如圖4.39所示。圖4.39返回指定表達(dá)式的ASCII值CHARINDEX(返回字符串的起始位置)函數(shù)CHARINDEX函數(shù)返回字符串中指定表達(dá)式的起始位置(如果找到)。搜索的起始位置為start_location。語(yǔ)法如下:CHARINDEX
(
expression1
,expression2
[
,
start_location
]
)參數(shù)說(shuō)明:expression1:包含要查找的序列的字符表達(dá)式。expression1最大長(zhǎng)度限制為8000個(gè)字符。expression2:要搜索的字符表達(dá)式。start_location:在expression2中搜索expression1時(shí)的起始字符位置。如果沒(méi)有給定
start_location,而是一個(gè)負(fù)數(shù)或零,則將從expression2的起始位置開(kāi)始搜索。返回類型:如果expression2的數(shù)據(jù)類型為varchar(max)、nvarchar(max)或varbinary(max),則為bigint,否則為int。【例4.40】使用CHARINDEX函數(shù)返回指定字符串的起始位置,SQL語(yǔ)句及運(yùn)行結(jié)果如圖4.40所示。圖4.40返回指定字符串的起始位置LEFT(取左邊指定個(gè)數(shù)的字符)函數(shù)LEFT函數(shù)返回字符串中從左邊開(kāi)始指定個(gè)數(shù)的字符。語(yǔ)法如下:LEFT
(
character_expression
,
integer_expression
)參數(shù)說(shuō)明:character_expression:字符或二進(jìn)制數(shù)據(jù)表達(dá)式。character_expression可以是常量、變量或列。character_expression可以是任何能夠隱式轉(zhuǎn)換為varchar的數(shù)據(jù)類型。否則,請(qǐng)使用CAST函數(shù)對(duì)character_expression進(jìn)行顯式轉(zhuǎn)換。integer_expression:正整數(shù)。如果integer_expression為負(fù),則返回空字符串。返回類型:當(dāng)character_expression為非Unicode字符數(shù)據(jù)類型時(shí),返回varchar。當(dāng)character_expression為Unicode字符數(shù)據(jù)類型時(shí),返回nvarchar?!纠?.41】使用LEFT函數(shù)返回指定字符串的最左邊四個(gè)字符,SQL語(yǔ)句及運(yùn)行結(jié)果如圖4.41所示。圖4.41返回指定字符串中的字符【例4.42】使用LEFT函數(shù)查詢Student表中的姓氏(姓氏是姓名的第一位)并計(jì)算出每個(gè)姓氏的數(shù)量,SQL語(yǔ)句及運(yùn)行結(jié)果如圖4.42所示。圖4.42查詢Student表中的姓氏RIGHT(取右邊指定個(gè)數(shù)的字符)函數(shù)RIGHT函數(shù)返回字符表達(dá)式中從起始位置(從右端開(kāi)始)到指定字符位置(從右端開(kāi)始計(jì)數(shù))的部分。語(yǔ)法如下:RIGHT(character_expression,integer_expression)參數(shù)說(shuō)明:character_expression:是從中提取字符的字符表達(dá)式。integer_expression:是起始位置,用正整數(shù)表示。如果integer_expression是負(fù)數(shù),則返回一個(gè)錯(cuò)誤。【例4.43】使用RIGHT函數(shù)查詢Student表中編號(hào)的后4位,SQL語(yǔ)句及運(yùn)行結(jié)果如圖4.43所示。圖4.43查詢Student表中的編號(hào)后4位LEN(返回字符個(gè)數(shù))函數(shù)LEN函數(shù)返回字符表達(dá)式中的字符數(shù)。如果字符串中包含前導(dǎo)空格和尾隨空格,則函數(shù)會(huì)將它們包含在計(jì)數(shù)內(nèi)。LEN對(duì)相同的單字節(jié)和雙字節(jié)字符串返回相同的值。語(yǔ)法如下:LEN(string_expression)參數(shù)說(shuō)明:string_expression:要計(jì)算的字符串表達(dá)式?!纠?.44】使用LEN函數(shù)計(jì)算指定字符的個(gè)數(shù),SQL語(yǔ)句及運(yùn)行結(jié)果如圖4.44所示。圖4.44指定字符的個(gè)數(shù)REPLACE(替換字符串)函數(shù)REPLACE函數(shù)將表達(dá)式中的一個(gè)字符串替換為另一個(gè)字符串或空字符串后,返回一個(gè)字符表達(dá)式。語(yǔ)法如下:
REPLACE(character_expression,searchstring,replacementstring)參數(shù)說(shuō)明:character_expression:是函數(shù)要搜索的有效字符表達(dá)式。searchstring:是函數(shù)嘗試定位的有效字符表達(dá)式。replacementstring:是用作替換表達(dá)式的有效字符表達(dá)式。【例4.45】使用REPLACE函數(shù)替換指定的字符,SQL語(yǔ)句及運(yùn)行結(jié)果如圖4.45所示。圖4.45替換指定的字符REVERSE(返回字符表達(dá)式的反轉(zhuǎn))函數(shù)REVERSE函數(shù)按相反順序返回字符表達(dá)式。語(yǔ)法如下:REVERSE(character_expression)參數(shù)說(shuō)明:character_expression:是要反轉(zhuǎn)的字符表達(dá)式?!纠?.46】使用REVERSE函數(shù)反轉(zhuǎn)指定的字符,SQL語(yǔ)句及運(yùn)行結(jié)果如圖4.46所示。圖4.46反轉(zhuǎn)指定的字符STR函數(shù)STR函數(shù)返回由數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換來(lái)的字符數(shù)據(jù)。語(yǔ)法如下:STR
(float_expression
[,
length
[
,
decimal
]
]
)參數(shù)說(shuō)明:float_expression:帶小數(shù)點(diǎn)的近似數(shù)字(float)數(shù)據(jù)類型的表達(dá)式。length:總長(zhǎng)度。它包括小數(shù)點(diǎn)、符號(hào)、數(shù)字以及空格。默認(rèn)值為10。decimal:小數(shù)點(diǎn)后的位數(shù)。decimal必須小于或等于16。如果decimal大于16,則會(huì)截?cái)嘟Y(jié)果,使其保持為小數(shù)點(diǎn)后具有十六位?!纠?.47】使用STR函數(shù)返回以下字符數(shù)據(jù),SQL語(yǔ)句及運(yùn)行結(jié)果如圖4.47所示。圖4.47
使用STR函數(shù)轉(zhuǎn)換字符串注意:當(dāng)表達(dá)式超出指定長(zhǎng)度時(shí),字符串為指定長(zhǎng)度返回**。SUBSTRING(取字符串)函數(shù)SUBSTRING函數(shù)為字符表達(dá)式、二進(jìn)制表達(dá)式、文本表達(dá)式或圖像表達(dá)式的一部分。語(yǔ)法如下:SUBSTRING
(value_expression
,start_expression
,
length_expression)參數(shù)說(shuō)明:value_expression:是character、binary、text、ntext或image表達(dá)式。start_expression:指定返回字符的起始位置的整數(shù)或bigint表達(dá)式。如果start_expression小于0,會(huì)生成錯(cuò)誤并終止語(yǔ)句。如果start_expression大于值表達(dá)式中的字符數(shù),將返回一個(gè)零長(zhǎng)度的表達(dá)式。length_expression:是正整數(shù)或指定要返回的value_expression的字符數(shù)的bigint表達(dá)式。如果length_expression是負(fù)數(shù),會(huì)生成錯(cuò)誤并終止語(yǔ)句。如果start_expression與
length_expression的總和大于value_expression中的字符數(shù),則返回整個(gè)值表達(dá)式。返回類型:如果expression是受支持的字符數(shù)據(jù)類型,則返回字符數(shù)據(jù)。如果expression是支持的binary數(shù)據(jù)類型中的一種數(shù)據(jù)類型,則返回二進(jìn)制數(shù)據(jù)。返回的字符串類型與指定表達(dá)式的類型相同,表4.17中顯示的除外。表4.17
返回的字符串類型與指定表達(dá)式的類型不相
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025擔(dān)保旅游合同書
- 2025貨物保險(xiǎn)合同范文
- 二零二五年度幼兒園園長(zhǎng)任期幼兒身心健康保障合同3篇
- 2025年度農(nóng)村宅基地房買賣合同(農(nóng)村旅游特色小鎮(zhèn)開(kāi)發(fā))
- 二零二五年度農(nóng)村土地承包權(quán)土地經(jīng)營(yíng)權(quán)流轉(zhuǎn)信息化建設(shè)合同
- 二零二五年度城市民宿租賃規(guī)范合同關(guān)于房屋出租3篇
- 二零二五幼兒入園早教托班全日制服務(wù)協(xié)議樣本3篇
- 二零二五年度漁業(yè)養(yǎng)殖市場(chǎng)調(diào)研與養(yǎng)魚合同3篇
- 二零二五年度新能源汽車核心零部件供貨協(xié)議模板3篇
- 2025年度園林景觀設(shè)計(jì)樹木補(bǔ)償合同3篇
- Unit 4 Plants around us Part A(說(shuō)課稿)-2024-2025學(xué)年人教PEP版(2024)英語(yǔ)三年級(jí)上冊(cè)
- “小城鎮(zhèn)建設(shè)”論文(六篇)
- 安徽省蕪湖市2023-2024學(xué)年高一上學(xué)期期末考試 生物 含解析
- 設(shè)備維護(hù)保養(yǎng)培訓(xùn)
- 三管三必須-新安法宣貫課件
- 農(nóng)戶種地合作協(xié)議書范本模板
- 住院病人身體約束護(hù)理
- 公共機(jī)構(gòu)能耗定額 第3部分:教育機(jī)構(gòu)DB41-T 1960.3-2021
- “雙減”初中九年級(jí)英語(yǔ)課時(shí)作業(yè)設(shè)計(jì)案例
- 廣東省潮州市暨實(shí)高級(jí)中學(xué)2024-2025學(xué)年高二上學(xué)期9月月考語(yǔ)文試題
- GB/T 44415-2024基于全球衛(wèi)星導(dǎo)航的機(jī)動(dòng)車制動(dòng)性能路試檢驗(yàn)要求和方法
評(píng)論
0/150
提交評(píng)論