首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

查询字段中全角字符有关问题

2012-02-08 
查询字段中全角字符问题查询表 CARD 中的 A 字段中的 全角符号代码如下:SELECT *FROM CARDWHERE DATALENGT

查询字段中全角字符问题
查询表 CARD 中的 A 字段中的 全角符号
代码如下:
SELECT * FROM CARD 
  WHERE DATALENGTH(LTRIM(RTRIM(convert(varchar(100),A))))>LEN(LTRIM(RTRIM(CONVERT(varchar(100),A))))

但是本身 A 字段就是 varchar 类型的。
 
所以 

SELECT * FROM CARD 
  WHERE DATALENGTH(LTRIM(RTRIM(‘A’)))>LEN(LTRIM(RTRIM(‘A’)))

但是查询不出来结果。 表中有符合条件的  

坐等大虾

[解决办法]

探讨
RTRIM(‘A’) --> RTRIM(A)


不行。数据库提示 找不到 字段 A ,必须加引号 才行

[解决办法]
SQL code
create table card(A varchar(20))insert into card select 'sdkfuAsdf'insert into card select 'gvidnuf'insert into card select 'fi ,dfklj'goSELECT a.* FROM CARD a,master..spt_values bwhere b.type='p' and b.number between 1 and LEN(a.A)and UNICODE(SUBSTRING(a.a,b.number,1))>255/*A--------------------sdkfuAsdffi ,dfklj(2 行受影响)*/godrop table card
[解决办法]
探讨

引用:
引用:
RTRIM(‘A’) --> RTRIM(A)


不行。数据库提示 找不到 字段 A ,必须加引号 才行

不应该啊 字段A存在的吧 存在的话应该没有问题的



的确是这样的!!
提示:列名 'A' 无效。

热点排行