3 回答

TA貢獻(xiàn)1862條經(jīng)驗 獲得超7個贊
1、SUBSTRING
返回字符、binary、text 或 image 表達(dá)式的一部分。有關(guān)可與該函數(shù)一起使用的有效 Microsoft? SQL Server? 數(shù)據(jù)類型的更多信息,請參見數(shù)據(jù)類型。
語法
SUBSTRING ( expression , start , length )
參數(shù)
expression
是字符串、二進(jìn)制字符串、text、image、列或包含列的表達(dá)式。不要使用包含聚合函數(shù)的表達(dá)式。
start
是一個整數(shù),指定子串的開始位置。
length
是一個整數(shù),指定子串的長度(要返回的字符數(shù)或字節(jié)數(shù))。
說明 由于在 text 數(shù)據(jù)上使用 SUBSTRING 時 start 和 length 指定字節(jié)數(shù),因此 DBCS 數(shù)據(jù)(如日本漢字)可能導(dǎo)致在結(jié)果的開始或結(jié)束位置拆分字符。此行為與 READTEXT 處理 DBCS 的方式一致。然而,由于偶而會出現(xiàn)奇怪的結(jié)果,建議對 DBCS 字符使用 ntext 而非 text。
返回類型
如果 expression 是支持的字符數(shù)據(jù)類型,則返回字符數(shù)據(jù)。如果 expression 是支持的 binary 數(shù)據(jù)類型,則返回二進(jìn)制數(shù)據(jù)。
返回字符串的類型與給定表達(dá)式的類型相同(表中顯示的除外)。
給定的表達(dá)式 返回類型
text varchar
image varbinary
ntext nvarchar
2、7890QWER

TA貢獻(xiàn)1801條經(jīng)驗 獲得超16個贊
SUBSTRING('1234567890QWER',7,8)
你的寫法就錯了。
SUBSTRING('列名',7(截斷起始位),8(顯示長度))
返還的結(jié)果是890QWER---這里你給的''我沒記位數(shù)。

TA貢獻(xiàn)1821條經(jīng)驗 獲得超5個贊
問題1:7890QWER
這是結(jié)果。
問題2:我用的sql server2000,沒見過substr,估計是縮寫,應(yīng)該沒有區(qū)別
添加回答
舉報