午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

sql?server如何去除數(shù)據(jù)中的一些無(wú)用的空格

瀏覽:160日期:2023-09-29 21:02:28
目錄left&right&substringlower&upperltrim&rtrim模糊查詢(like的用法)使用like :不使用like:

先有個(gè)一名為student的關(guān)系,其字段以及元組如圖所示:

為了保持?jǐn)?shù)據(jù)的一致性,現(xiàn)在需要將sname的多余空格去除,以及將所有的snative字段的“族”去掉以保持?jǐn)?shù)據(jù)的一致性。在這之前,首先介紹幾個(gè)常用的函數(shù):

left&right&substring

使用格式:left(str, n)right(str, n)substring(str, start, n)str指的是字符串對(duì)象,n指的是字符個(gè)數(shù),所以left和right的作用就明了了:從傳入的字符串的左邊(右邊)第一個(gè)字符開始,選中n個(gè)字符,例如:

這里選出的結(jié)果有的為空是因?yàn)樵P(guān)系中sname有些開頭有空格。而substring()的用法更為靈活,它指定了從str的第幾個(gè)元素開始,即start的作用,如從sname的第二個(gè)字符開始選擇三個(gè)字符:

有三個(gè)地方需要注意:

在sql中,字符串的第一個(gè)字符不是0,而是1,拿python來(lái)說(shuō),它的字符串的第一個(gè)字符的索引為0,拿C語(yǔ)言的數(shù)組來(lái)說(shuō),第一個(gè)元素的索引為0,所以這個(gè)區(qū)別需要清楚。我們知道中文占用兩個(gè)字節(jié),可能在這里容易陷入一個(gè)誤區(qū):是不是sql選擇字符串中的中文需要兩個(gè)距離大小呢?比如選擇第一個(gè)中文就是:substring(str, 1, 2)?看了上面的實(shí)例就知道了,這里儲(chǔ)存字符串類似于數(shù)組,一個(gè)字符占用一個(gè)位置,所以這樣才是正確的:substring(str, 1, 1)如果要訪問(wèn)字符串的最后一個(gè)字符如何操作呢?根據(jù)這三個(gè)函數(shù)有兩種方法:right(str, 1)或者substring(str, len(str), 1)lower&upper

使用方式:

select upper(sname) from student;select lower(sname) from student;

這兩個(gè)函數(shù)對(duì)于中文無(wú)影響

ltrim&rtrim

使用方式:

select ltrim(sname) from student;select rtrim(sname) from student;

作用:去除屬性值最左邊(右邊)的空格;

模糊查詢(like的用法)

具體請(qǐng)參照我的這一篇博文:https://www.jb51.net/database/285790x8b.htm

首先解決簡(jiǎn)單的,將民族的多余的“族”去掉:

update student set snative=substring(snative, 1, len(snative) - 1) where right(snative, 1)='族';

現(xiàn)在去除多余的空格:大體上有兩種方式,使用like和不適用like:

使用like :

首先去除左右兩邊的空格:這里的% 可以代表任意字符,甚至可以為空。

-- 首先去除左右兩邊的空格update student set sname=ltrim(rtrim(sname)) where sname like ‘% %';

然后去除中間的空格:

update student set sname=left(sname,1)+right(sname,1) where sname like ‘% %';

使用like '% %'其實(shí)實(shí)現(xiàn)了掃描每一個(gè)sname字符串是否包含空格。

不使用like:

首先去除兩邊的空格:

update student set sname=ltrim(rtrim(sname));

去除中間的空格:

update student set sname = left(sname, 1) + rtrim(ltrim(substring(sname, 2, len(sname) - 2))) + right(sname, 1);

這種方法其實(shí)不通用,僅僅適合處理名字長(zhǎng)度小于4的情況,其他情況的中間空格沒(méi)法完全去除。它的思路就是先除去sname的左右空格,然后取中間部分,再次除去這部分的左右空格,然后和左右部分相接。

到此這篇關(guān)于sql server去除數(shù)據(jù)中的一些無(wú)用的空格的文章就介紹到這了,更多相關(guān)sql server去除數(shù)據(jù)空格內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: MsSQL 數(shù)據(jù)庫(kù)
主站蜘蛛池模板: 操碰av| 精品视频在线免费 | 日韩高清毛片 | 日韩永久免费 | 久久激情免费视频 | 天天操中文字幕 | 少妇特黄a一区二区三区 | 亚洲精品卡一卡二 | 亚洲天堂首页 | 视频1区| 一区二区在线视频 | 国产自产21 | 亚洲国产欧洲 | 久久天堂视频 | 国产传媒一区二区 | 成人性视频网站 | 欧美成人精品欧美一级私黄 | 欧美一区在线视频 | 国产精品高清在线 | 日本亚洲欧美在线 | 成人午夜网 | 久久久91视频| 国产精品一区二区久久 | 中文字幕亚洲第一 | 日韩欧美国产中文字幕 | 午夜影视福利 | 欧美午夜精品一区二区 | 久久视频99 | 国产成人精品网站 | 色婷婷色综合 | 久操网站| av爱爱| 一级二级三级黄色片 | 色图色小说| 久久精品国产一区二区三区 | 国产suv精品一区二区69 | 一区二区精品 | 中文字幕永久在线 | 岛国av大片 | 国产伦精品一区二区三区照片 | 亚洲综合涩 |