免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12345
最近访问板块 发新帖
楼主: tigerfish
打印 上一主题 下一主题

SQL Server数据库技术 [复制链接]

论坛徽章:
0
41 [报告]
发表于 2006-05-27 01:14 |只看该作者
字符串函数对二进制数据、字符串和表达式执行不同的运算。此类函数作用于CHAR、VARCHAR、 BINARY、 和VARBINARY 数据类型以及可以隐式转换为CHAR 或VARCHAR的数据类型。可以在SELECT 语句的SELECT 和WHERE 子句以及表达式中使用字符串函数。常用的字符串函数有:

1、字符转换函数
有以下几种字符转换函数:
·ASCII()
ASCII() 函数返回字符表达式最左端字符的ASCII 码值。ASCII() 函数语法如下

论坛徽章:
0
42 [报告]
发表于 2006-05-27 01:14 |只看该作者
提醒:在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错。

·CHAR()
CHAR() 函数用于将ASCII 码转换为字符。其语法如下:





如果没有输入0 ~ 255 之间的ASCII 码值,CHAR() 函数会返回一个NULL 值。

  例4-41:

论坛徽章:
0
43 [报告]
发表于 2006-05-27 01:14 |只看该作者
·STR()
STR() 函数把数值型数据转换为字符型数据,其语法如下:
STR ([,length[, ]])
  自变量length 和decimal 必须是非负值,length 指定返回的字符串的长度,decimal 指定返回的小数位数。如果没有指定长度,缺省的length 值为10, decimal 缺省值为0。 小数位数大于decimal 值时,STR() 函数将其下一位四舍五入。指定长度应大于或等于数字的符号位数+小数点前的位数+小数点位数+小数点后的位数。如果小数点前的位数超过了指定的长度,则返回指定长度的“*”。

  例4-44:






2、去空格函数
去空格函数有如下两种:
·LTRIM()
LTRIM() 函数把字符串头部的空格去掉,其语法如下:
  LTRIM ()

论坛徽章:
0
44 [报告]
发表于 2006-05-27 01:14 |只看该作者
3、取子串函数
取子串函数如下所示:
·LEFT()
LEFT() 函数返回部分字符串,其语法如下:
  LEFT (, )
  LEFT() 函数返回的子串是从字符串最左边起到第integer_expression 个字符的部分。若integer_expression 为负值,则返回NULL 值。

  例4-48:






·RIGHT()
RIGHT() 函数返回部分字符串,其语法如下:
  RIGHT (, )
  RIGHT() 函数返回的子串是从字符串右边第integer_expression 个字符起到最后一个字符的部分。若integer_expression 为负值,则返回NULL 值。

论坛徽章:
0
45 [报告]
发表于 2006-05-27 01:15 |只看该作者
4、字符串比较函数
字符串比较函数如下所示:
·CHARINDEX()
CHARINDEX() 函数返回字符串中某个指定的子串出现的开始位置,其语法如下:
  CHARINDEX (<’substring_expression’>, )
  其中substring _expression 是所要查找的字符表达式,expression 可为字符串也可为列名表达式。如果没有发现子串,则返回0 值。此函数不能用于TEXT 和IMAGE 数据类型。

  例4-51:






  例4-52:






·PATINDEX()
PATINDEX() 函数返回字符串中某个指定的子串出现的开始位置,其语法如下:
  PATINDEX (<’%substring _expression%’>, )
  其中子串表达式前后必须有百分号“%”否则返回值为0。

论坛徽章:
0
46 [报告]
发表于 2006-05-27 01:15 |只看该作者
6、数据类型转换函数
在一般情况下,SQL Server 会自动完成数据类型的转换,例如,可以直接将字符数据类型或表达式与DATATIME 数据类型或表达式比较当表达式中用了INTEGER、 SMALLINT或TINYINT 时,SQL Server 也可将INTEGER 数据类型或表达式转换为SMALLINT数据类型或表达式,这称为隐式转换。如果不能确定SQL Server 是否能完成隐式转换或者使用了不能隐式转换的其它数据类型,就需要使用数据类型转换函数做显式转换了。此类函数有两个:
·CAST()
CAST() 函数语法如下:
CAST ( AS [ length ])

·CONVERT()
CONVERT() 函数语法如下:
CONVERT ([ length ], [, style])

提醒: 1、data_type为SQL Server系统定义的数据类型,用户自定义的数据类型不能在此使用。
2、length用于指定数据的长度,缺省值为30。
3、把CHAR或VARCHAR类型转换为诸如INT或SAMLLINT这样的INTEGER类型、结果必须是带正号(+)或负号(-)的数值。
4、TEXT类型到CHAR或VARCHAR类型转换最多为8000个字符,即CHAR或VARCHAR数据类型是最大长度。
5、IMAGE类型存储的数据转换到BINARY或VARBINARY类型,最多为8000个字符。
6、把整数值转换为MONEY或SMALLMONEY类型,按定义的国家的货币单位来处理,如人民币、美元、英镑等。
7、BIT类型的转换把非零值转换为1,并仍以BIT类型存储。
8、试图转换到不同长度的数据类型,会截短转换值并在转换值后显示“+”,以标识发生了这种截断。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP