1樓:郯翊淦光赫
sql語句可以擷取指定欄位後面的字串,以sqlserver為例,需要用到charindex函式和substring函式。
如test表中有如下資料,要求截圖str欄位中逗號後邊的內容。
可用如下語句:
1select id,substring(str,charindex(',',str)+1,len(str)-charindex(',',str)) from test;
結果截圖:
charindex函式說明:
語法:charindex
(expression1
,expression2,[
start_location])
引數:expression1
一個表示式,其中包含要尋找的字元的次序。expression1
是一個短字元資料型別分類的表示式。
expression2
一個表示式,通常是一個用於搜尋指定序列的列。expression2
屬於字串資料型別分類。
start_location
在expression2
中搜尋expression1
時的起始字元位置。如果沒有給定
start_location,而是一個負數或零,則將從
expression2
的起始位置開始搜尋。
substring函式說明:
語法:substring(
expression,
start, length)
引數:expression 字串、二進位制字串、文字、影象、列或包含列的表示式start 整數或可以隱式轉換為
int的表示式,指定子字串的開始位置length 整數或可以隱式轉換為
int的表示式,指定子字串的長度
2樓:day忘不掉的痛
一.如:'6.7.8.2.3.4.x'得到最後一個'.'後面的字串:
declare @str1 varchar(50)
set @str1='6.7.8.2.3.4.x'
select reverse(substring(reverse(@str1),1,charindex('.',reverse(@str1))-1)) -------- string:'x'--
二.如:'6.7.8.2.3.4.x'得到最後一個'.'前面的字串:
declare @str2 varchar(50)
set @str2='6.7.8.2.3.4.x'
select substring(@str2,1,(len(@str2)-charindex('.',reverse(@str2)))) string:'6.
7.8.2.
3.4'--
三.如:'6.7.8.2.3.4.x'得到最後一個'.'在字串的位置:
declare @str3 varchar(50)
set @str3='6.7.8.2.3.4.x'
select len(@str3)-charindex('.',reverse(@str3))+1 --------integer:12--
3樓:匿名使用者
是要找字串中最後一個「/」嗎?可以用string.lastindexof('/');
4樓:
select right(attachurl, charindex('/',reverse(attachurl))-1) from attach
sql語句,如何擷取指定欄位某一個字元出現後的後面的字串嗎
5樓:教育仁昌
工具/材料:management studio。
1、首先在桌面上,點選「management studio」圖示。
2、之後在該介面中,點選左上角「新建查詢」選項。
3、接著在該介面中,輸入擷取指定欄位某一個字元出現後的後面的字串的sql語句「
select substring(name,charindex(',',name)+1,len(name)-charindex(',',name)) from test2;」。
4、然後在該介面中,點選左上方「執行」按鈕。
5、最後在該介面中,顯示擷取指定欄位某一個字元出現後的後面的字串成功。
6樓:司馬刀劍
sql語句可以擷取指定欄位後面的字串,以sqlserver為例,需要用到charindex函式和substring函式。
如test表中有如下資料,要求截圖str欄位中逗號後邊的內容。
可用如下語句:
select id,substring(str,charindex(',',str)+1,len(str)-charindex(',',str)) from test;
結果截圖:
charindex函式說明:
語法:charindex ( expression1 , expression2 , [ start_location ] )
引數:expression1
一個表示式,其中包含要尋找的字元的次序。expression1 是一個短字元資料型別分類的表示式。
expression2
一個表示式,通常是一個用於搜尋指定序列的列。expression2 屬於字串資料型別分類。
start_location
在 expression2 中搜尋 expression1 時的起始字元位置。如果沒有給定 start_location,而是一個負數或零,則將從 expression2 的起始位置開始搜尋。
substring函式說明:
語法:substring( expression, start, length)
引數:expression 字串、二進位制字串、文字、影象、列或包含列的表示式start 整數或可以隱式轉換為 int 的表示式,指定子字串的開始位置length 整數或可以隱式轉換為 int 的表示式,指定子字串的長度
擷取一個字串的最後6位sql語句怎麼寫?
7樓:a雄
看了一下回答,我還是說幾句吧,希望有所幫助。
對sql字串的擷取現在有兩種方法,
一種是:用right函式。
如果你的字串已經讀取到的話,假如放在strings自己定義的變數裡面
就可以用:select right('strings',4) 此函式返回的結果是,字串strings
的最後四位,如果strings不足四位或剛好四位,則全部返回。
如果你的字串是從表中讀取出來的話,可以先定義一個變數
declare @string 把查詢出的字串賦值過去,使用:
select right('@string',4),就可以了,理解同上。
另一種是:用substring函式
select substring('1234567',len('1234567')-4,4)
返回的結果是:『4567』 或用上面的自定義變數才儲存查詢出來的字串。
小小一例:
godeclare @string char(10)
set @string='1234567' ----可以是一條sql語句,返回的結果是一個字串
select substring('1234567',len('1234567')-4,4)
go應該清楚了吧? ^_^ 要是有什麼不清楚的,隨時hi我 相互學習!
8樓:仰春勞婷
用right()
函式就可以了,
如:right(str,6)
'str
你要擷取的字串
然後,在你的sql語句中引用它就行了.
9樓:房驕己陽德
select
substring('123456789',len('123456789')-5,len('123456789'))
'123456789'用變數移植起來就不麻煩了
10樓:匿名使用者
right
返回字串中從右邊開始指定個數的 integer_expression 字元。
語法right ( character_expression , integer_expression )
引數character_expression
由字元資料組成的表示式。character_expression 可以是常量、變數,也可以是字元或二進位制資料的列。
integer_expression
是起始位置,用正整數表示。如果 integer_expression 是負數,則返回一個錯誤。
示例下例返回每個作者名字中最右邊的六個字元。
use pubs
goselect right(au_fname, 6)
from authors
order by au_fname
11樓:
oracle / sql :
擷取後n位:
substr(欄位,length(欄位)-n + 1 ,n )select substr('123456789',length('123456789')-n+1,n) from dual;
當 n=6 :
select substr('123456789',length('123456789')-6+1,6) from dual;
12樓:北京pcb設計
使用right函式。
select right('123456789',6) as cc-----------
result
'456789'
不過移植起來會有點麻煩
擷取一個字串的最後6位sql語句怎麼寫?
13樓:匿名使用者
oracle / sql : 擷取後n位:substr(欄位,length(欄位)-n + 1 ,n ) select substr('123456789',length('123456789')-n+1,n) from dual;當 n=6 :
select substr('123456789',length('123456789')-6+1,6) from dual;
14樓:匿名使用者
看了一下回答,我還是說幾句吧,希望有所幫助。 對sql字串的擷取現在有兩種方法, 一種是:用right函式。
如果你的字串已經讀取到的話,假如放在strings自己定義的變數裡面就可以用:select right('strings',4) 此函式返回的結果是,字串strings的最後四位,如果strings不足四位或剛好四位,則全部返回。 如果你的字串是從表中讀取出來的話,可以先定義一個變數declare @string 把查詢出的字串賦值過去,使用:
select right('@string',4),就可以了,理解同上。 另一種是:用substring函式 select substring('1234567',len('1234567')-4,4) 返回的結果是:
『4567』 或用上面的自定義變數才儲存查詢出來的字串。小小一例:godeclare @string char(10)set @string='1234567' ----可以是一條sql語句,返回的結果是一個字串select substring('1234567',len('1234567')-4,4)go應該清楚了吧?
^_^ 要是有什麼不清楚的,隨時hi我 相互學習!
jquery字串校驗 如何判斷字串是否既有數字有含有英文字母,且長度大於
var str 1234abcd function strcheck str else else alert strcheck str jquery中怎麼判斷一個字串中是否包含數字 直接寫一個正則就行,比如 用isnan方法,示例 12 3456 78有任何疑問,歡迎追問.jquery判斷字串是否只...
js中如何拼接字串,在js中進行字串拼接。
js中有三種字串連線方式 第一種方法 用連線符 把要連線的字串連起來 str a str b 第二種方法,以陣列作為中介用 join 連線字串 var arr new array arr.push a arr.push b var str arr.join 第三種方法,利用物件屬性來連線字串 js中...
c 中字元陣列,如何轉成字串啊
如果你想把一個字串變成陣列,你只需要將字串初始化為陣列變數的值即可。例如 char c 10 this is 在c 裡字串在記憶體的儲存方式就是按字串陣列的形式儲存的,所以不用轉換!用cstring的getbuffer函式返回一個存放字元的頭指標,用一個char 來接受他,然後用下標操作就可以了。例...