日期:2014-05-18  浏览次数:20502 次

汉字所占字符
我有两个问题.第一,一个汉字是不是占两个字符位置啊?第二,我出现了如下问题

student表中所有姓刘的有刘晨和刘好东,还有我用的Sql server 2000开发版SP2,程序如下

select name 
from student 
where name like '刘__';

刘后面加一个下划线,显示出来刘晨,加两个下划线就显示了刘晨和刘好东,大家说有什么问题没有啊 ?如果只想要三个字的名字呢,而不显示两个汉字的,就类似这样的方法?不用下面的

SELECT Sname
FROM Student
WHERE (LEN(Sname) =3) AND (Sname LIKE '刘晨%')


------解决方案--------------------
LEN
返回给定字符串表达式的字符(而不是字节)个数,其中不包含尾随空格。

语法
LEN ( string_expression ) 


要计算的字符串表达式。

DATALENGTH 
返回任何表达式所占用的字节数。

语法
DATALENGTH ( expression ) 


以上两个函数是计算字符数/字节数




------解决方案--------------------
检查你的name 字段的数据类型是char还是varchar

如果是前者,出来是对的。