18.其他系统函数

1.PatIndex

     如果需要按照一定模式进行匹配,比如“计算字符串中第一个长度为2并且第二个字符为m的子字符串在目标字符串中的位置,PatIndex就是用来进行这种模式字串匹配的,其参数格式如下:

     PartIndex( '%pattern%' , expression)它返回指定表达式中模式'%pattern%'第一次出现的起始位置;如果在全部有效的文本和符数据类型中没有找到该模式,则返回零。在模式中可以使用通配符。

select patindex('%_m%','Sam')--结果:2

2.Replicate

     该函数用来得到一个子字符串重复了若干次所组成的字符串,其参数格式如下:

     replicate(str,count):参数str为子字符串,而count为重复次数。

select  replicate('so',6)--结果:sosososososo

3.Reverse

     该函数用来将一个字符串的顺序颠倒。

select reverse('sebar')--结果:rabes

4.IsDate

     该函数用来确定输入表达式是否为有效日期。如果输入表达式是有效日期,那么 返回 1;否则,返回 0。

SELECT  
    ISDATE(NULL) as d1, 
    ISDATE('13/43/3425') as d2, 
    ISDATE('1995-10-1a') as d3, 
    ISDATE(19920808) as d4, 
    ISDATE('1/23/95') as d5, 
    ISDATE('1995-10-1') as d6, 
    ISDATE('19920808') as d7, 
    ISDATE(' Abc') as d8 

5.IsNumeric

     该函数用来确定表达式是否为有效的数值类型。如果输入表达式的计算值为有效的整数、浮点数、money 或 decimal 类型时,返回 1;否则返回 0。

SELECT  
    ISNUMERIC(NULL) as d1, 
    ISNUMERIC('13/43/3425') as d2, 
    ISNUMERIC('30a.8') as d3, 
    ISNUMERIC(19920808) as d4, 
    ISNUMERIC('1/23/95') as d5, 
    ISNUMERIC('3E-3') as d6, 
    ISNUMERIC('19920808') as d7, 
    ISNUMERIC('-30.3') as d8 

6.其他

SELECT 
   APP_NAME() as appname, --当前会话的应用程序名称
   CURRENT_USER as cu, --返回当前登陆用户名
   HOST_NAME() as hostname, --返回工作站名
   NEWID() AS id1  --生成全局唯一字符串

posted on 2012-10-17 15:05  凡一二三  阅读(264)  评论(0编辑  收藏  举报