parsename函数的用法
返回一个对像名特殊的部分,这此部分有对象名称,所有者,数据名,服务器名。注意:此函数不会直接判断特殊对象是否存在,它只返回给定特殊对像名称,要是找不到合适就返回NULL。语法:
PARSENAME ( 'object_name' , object_piece )
说明:
Object_name
检索的对象名称,它是系统名称变量。这个参数是可先项,如果此对象名称正确,并且包括服务器名,数据库名,所有者,对象名。
Object_piece
是 int 值,可以为下列值
其中
1 = Object name
2 = Schema name
3 = Database name
4 = Server name
select
parsename('server1.dbname1.dbo.table',1) as 'Object Name',
parsename('server1.dbname1.dbo.table',2) as 'Schema Name',
parsename('server1.dbname1.dbo.table',3) as 'Database Name',
parsename('server1.dbname1.dbo.table',4) as 'Server Name'
--结果
Object Name Schema Name Database Name Server name
--------------------------------------------------------
table dbo dbname1 server1
(1 row(s) affected)
select
parsename('192.168.1.25',4) as section1,
parsename('192.168.1.25',3) as section2,
parsename('192.168.1.25',2) as section3,
parsename('192.168.1.25',1) as section4
--结果
section1 section2 section3 section4
-----------------------------------------
192
168
1
25
注意第一段是从4开始取的,因为这个函数对应的顺序是4是Server name,3是Database name,2是Schema name,1是Object name
通过这样的方法可以做很多简单的分割应用,当然只能用于.号的字符串且只能是少于4段。