返回字符、binary、text 或 image 表达式的一部分。有关可与该函数一起使用的有效 Microsoft® sql Server™ 数据类型的更多信息,请参见数据类型。
给定的表达式 |
返回类型 |
text |
varchar |
image |
varbinary |
ntext |
nvarchar |
@H_607_127@
注释
在字符数中必须指定使用 ntext、char 或 varchar 数据类型的偏移量(start 和 length)。在字节数中必须指定使用 text、image、binary 或 varbinary 数据类型的偏移量。
说明 兼容级别可能影响返回值。有关兼容级别的更多信息,请参见 sp_dbcmptlevel。
示例
A. 在字符串上使用 SUBStriNG
下例显示如何只返回字符串的一部分。该查询在一列中返回 authors 表中的姓氏,在另一列中返回 authors 表中的名字首字母。
USE pubs
SELECT au_lname,SUBStriNG(au_fname,1,1)
FROM authors
ORDER BY au_lname
下面是结果集:
au_lname
---------------------------------------- -
Bennet A
Blotchet-Halls R
Carson C
DeFrance M
del Castillo I
...
Yokomoto A
(23 row(s) affected)
下例显示如何显示字符串常量 abcdef 中的第二个、第三个和第四个字符。
SELECT x = SUBStriNG('abcdef',2,3)
下面是结果集:
x
----------
bcd
(1 row(s) affected)
B. 在 text、ntext 和 image 数据上使用 SUBStriNG
下例显示如何从 pubs 数据库的 publishers 表内的每个 text 和 image 数据列中返回前 200 个字符。text 数据以 varchar 的形式返回,image 数据则以 varbinary 的形式返回。
USE pubs
SELECT pub_id,SUBStriNG(logo,10) AS logo,SUBStriNG(pr_info,10) AS pr_info
FROM pub_info
WHERE pub_id = '1756'
下面是结果集:
pub_id logo pr_info
------ ---------------------- ----------
1756 0x474946383961E3002500 This is sa
(1 row(s) affected)
下例显示 SUBStriNG 在 text 和 ntext 数据上的效果。首先,下例在 pubs 数据库内创建一个名为 npr_info 的新表。然后,在 npr_info 表中用 pub_info.pr_info 列的前 80 个字符创建 pr_info 列,并添加ü作为首字符。最后,INNER JOIN 检索所有出版商标识号以及 text 和 ntext 出版商信息列的 SUBStriNG。
üüüüüüüüIF EXISTS (SELECT table_name FROM @R_935_4036@ION_scheR_775_11845@A.TABLES
WHERE table_name = 'npub_info')
drop table npub_info
GO
-- Create npub_info table in pubs database. Borrowed from instpubs.sql.
USE pubs
GO
create table npub_info
(
pub_id char(4) NOT NULL
REFERENCES publishers(pub_id)
CONSTraiNT UPKCL_npubinfo PRI@R_197_11035@ KEY CLUSTERED,pr_info ntext NULL
)
GO
-- Fill the pr_info column in npub_info with international data.
RAISERROR('Now at the inserts to pub_info...',1)
GO
INSERT npub_info VALUES('0736',N'This is sample text data for New Moon Books,publisher 0736 in the pubs database')
INSERT npub_info values('0877',N'This is sample text data for Binnet & Hardley,publisher 0877 in the pubs databa')
INSERT npub_info values('1389',N'This is sample text data for Algodata Infosystems,publisher 1389 in the pubs da')
INSERT npub_info values('9952',N'This is sample text data for Scootney Books,publisher 9952 in the pubs database')
INSERT npub_info values('1622',N'This is sample text data for Five Lakes Publishing,publisher 1622 in the pubs d')
INSERT npub_info values('1756',N'This is sample text data for Ramona Publishers,publisher 1756 in the pubs datab')
INSERT npub_info values('9901',N'This is sample text data for GGG&G,publisher 9901 in the pubs database. GGG&G i')
INSERT npub_info values('9999',N'This is sample text data for Lucerne Publishing,publisher 9999 in the pubs data')
GO
-- Join between npub_info and pub_info on pub_id.
SELECT PR.pub_id,SUBStriNG(PR.pr_info,35) AS pr_info,SUBStriNG(nPR.pr_info,35) AS npr_info
FROM pub_info pr INNER JOIN npub_info npr
ON PR.pub_id = nPR.pub_id
ORDER BY PR.pub_id ASC
大佬总结
以上是大佬教程为你收集整理的sqlserver 中的 substring函数全部内容,希望文章能够帮你解决sqlserver 中的 substring函数所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: