一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫技術(shù)|

服務(wù)器之家 - 數(shù)據(jù)庫 - Oracle - oracle中l(wèi)ength、lengthb、substr、substrb函數(shù)用法介紹

oracle中l(wèi)ength、lengthb、substr、substrb函數(shù)用法介紹

2020-03-12 15:52DAO的博客 Oracle

這篇文章主要介紹了oracle中l(wèi)ength、lengthb、substr、substrb函數(shù)用法的相關(guān)內(nèi)容,具有一定參考價(jià)值,需要的朋友可以參考下。

我記得我曾經(jīng)在開發(fā)form的時(shí)候犯過這樣一個(gè)錯(cuò)誤,對(duì)于form中的某個(gè)字段,對(duì)應(yīng)于數(shù)據(jù)庫中某張表的字段,假設(shè)在數(shù)據(jù)庫中這個(gè)字段一般也就用到20個(gè)漢字的長(zhǎng)度,后來我在開發(fā)form的時(shí)候,設(shè)置item類型長(zhǎng)度的時(shí)候,我慣性的設(shè)置成了50byte,想著就算是20個(gè)漢字,最多也就占40個(gè)byte長(zhǎng)度嘛。可是,就因?yàn)檫@一個(gè)想當(dāng)然,結(jié)果出現(xiàn)錯(cuò)誤了,后來發(fā)現(xiàn)數(shù)據(jù)庫字符集編碼是utf8,那么應(yīng)該設(shè)置為60。從那以后,每次涉及到給字段設(shè)置長(zhǎng)度的時(shí)候,我都會(huì)特別注意下,到底是啥編碼。

在oracle中,比較常見的可能是length、substr,至少我看到的大部分都是這兩個(gè),要不是昨天看代碼發(fā)現(xiàn)了lengthb、substrb,估計(jì)我也遺忘了。length表示的是字符串的字符長(zhǎng)度,lengthb表示的是字符串的字節(jié)長(zhǎng)度;substr表示根據(jù)字符長(zhǎng)度獲取子串,substrb表示根據(jù)字節(jié)長(zhǎng)度來獲取字串。下面直接看例子來說明:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
SELECT length('葉德華abc') -- length按字符計(jì),漢字、英文、數(shù)字都是1個(gè)字符,故這里返回6
 FROM dual;
SELECT lengthb('葉德華abc') -- length按字節(jié)計(jì),我這里是UTF-8編碼,漢字3個(gè)字節(jié),英文一個(gè)字節(jié),故這里返回12
 FROM dual;
SELECT substr('葉德華abc', -- substr按字符截取,截取到a,返回:葉德華a
       1,
       4)
 FROM dual;
SELECT substrb('葉德華abc',
        1,
        2) -- substrb按字節(jié)截取,2不足一個(gè)漢字長(zhǎng)度,返回:兩個(gè)空格
 FROM dual;
SELECT substrb('葉德華abc',
        1,
        3) -- substrb按字節(jié)截取,3剛好是一個(gè)漢字長(zhǎng)度,返回:葉
 FROM dual;
SELECT substrb('葉德華abc',
        1,
        4) -- substrb按字節(jié)截取,4多余一個(gè)漢字少于兩個(gè)漢字,返回:葉 加一個(gè)空格
 FROM dual;

 

在oracle中應(yīng)該還有其他類似的方法,這里就不總結(jié)了,大概就是這么個(gè)意思。補(bǔ)充一下,據(jù)說在oracle中定義字符類型的時(shí)候默認(rèn)的長(zhǎng)度是byte,比如varchar2(20)表示的是20個(gè)字節(jié)長(zhǎng)度,如果要定義成字符,則varchar2(20 char),不過,一般我們也都用字節(jié)定義。

總結(jié)

以上就是本文關(guān)于oracle中l(wèi)ength、lengthb、substr、substrb函數(shù)用法介紹的全部?jī)?nèi)容,希望對(duì)大家有所幫助。

原文鏈接:http://blog.csdn.net/zhangbingtao2011/article/details/51384393

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 高h细节肉爽文办公室 | 69日本人xxxxxxxx色 | 亚洲国产高清一区二区三区 | 99精品在线视频观看 | 99国内精品久久久久久久黑人 | 国产日韩欧美 | 5x社区发源地最新地址 | 色哟哟在线资源 | 午夜精品久久久内射近拍高清 | sao虎在线精品永久在线 | 午夜黄视频| 久久久亚洲国产精品主播 | www.九九热| 乳环调教 | 成人综合网址 | 黄篇网站在线观看 | 精品女同一区二区三区免费站 | 久久学生精品国产自在拍 | 毛片区 | 日本护士xxxx视频免费 | 全色黄大色黄大片爽一次 | 欧美亚洲国产精品久久第一页 | 大胆人gogo888体艺术在线 | 99精彩免费观看 | 日韩精品特黄毛片免费看 | xxx95日本老师xxx学生 | 亚洲黄色天堂 | 白丝h视频 | 满溢游泳池免费土豪全集下拉版 | 四虎精品成人免费观看 | 久久久精品免费免费直播 | 高h折磨调教古代 | xxx美国 | 国产成人夜色影视视频 | 亚洲 欧美 另类 中文 在线 | 波多野结衣在线观看视频 | 91精品国产综合久久精品 | 暖暖中国免费观看高清完整版 | 国产特黄a级在线视频 | 国产伦码精品一区二区 | 黑人巨摘花第一次出血 |