SQL表中怎么去掉一个字段中的空字符

不是空格,也不是 字符,用这两个查不出来,那个字段是存的序列号(code)

比方说一行的值是:2012
直接用
select * from table where code='2012'--这样是查不到的
select * from table where code like'%2012'--这样可以查到

select len(code) from table where code like'%2012' --返回的是5

查询空格和空字符 查询不到任何结构
select * from table where code like '% %' --一个也查不到

我想知道前面那个看不见但是存在的字符是什么...

用这种替换语句
update table set code=ltrim(rtrim(code))--执行后没有效果,可见不是空格

update table set code=replace(code,' ','')--执行后也是没有效果

用REPLACE函数来替换。
SQL字段中的空字符有2种,空格符和tab制表符(即char(9))。
例:去除 表table 中 col 列的空字符
去除空格符:update table set col = REPLACE(col,' ','')
去除制表符:update table set col = REPLACE(col,CHAR(9),'')
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-03-02
你可以先用 select ascii(code) from table 来判断前面的到底是什么字符,之后再将该字符替换为空字符串。

或者确定每条记录前面都有这么一个字符的话,直接用:
update table set code=right(code,len(code)-1) where len(code)>1 将前面的字符截掉本回答被提问者采纳
第2个回答  2012-03-02
--以下是我测试用的语句, 你看看参考吧
declare @a varchar(20)
set @a = 'abc
'
--这里查询是为了看一下这个字段左边的那个字段ASCII码是什么
select ascii(left(@a, 1))

--select case when right(@a, 1) = nchar(10) then 1 else 0 end

--我想你的Update可以这么写
update table1 set code = case when left(code, 1) = nchar(10) then right(code, len(code)-1) else code end
第3个回答  2012-03-02
那一列是什么数据类型呢?varchar?本回答被网友采纳

SQL表中怎么去掉一个字段中的空字符
用REPLACE函数来替换。SQL字段中的空字符有2种,空格符和tab制表符(即char(9))。例:去除 表table 中 col 列的空字符 去除空格符:update table set col = REPLACE(col,' ','')去除制表符:update table set col = REPLACE(col,CHAR(9),'')...

SQL 替换某个字段中的空格,TAB
在数据库处理工作中,遇到需要去除字段中的空格情况,MySQL提供了replace()函数来解决这一问题。该函数能够替换字符串中的指定字符或子串,对于去除空格尤其实用。例如,假设我们有一个包含空格的字符串,如“ Hello World ”,我们需要去除所有空格,可以使用如下SQL语句:replace(" Hello World "," ","...

sql语句 怎么去掉一个字段里值的空格 如name=‘阿斯 ’
1:update table1 a set a.字段=a.trim(a.字段); \/\/去掉字段前面后后面的空格 2: update table1 a set a.字段=replace(a.字段,' ',''); \/\/去掉字段所有的空格(包括前、中、后)备注:别忘记点“提交”或执行commit;

SQL里面怎样去掉字段前后的空字符
SQL字段中的空字符有2种,空格符和tab制表符(即char(9))。 例:去除 表table 中 col 列的空字符 去除空格符

SQL语句(mysql)怎么去掉字段内一部分内容
可以使用字符串处理函数来去掉字段的不分内容,例如insert(),replace()等等函数也可以组合使用它们。例如下面的例子用这两个函数分别用零长度字符串将字段C中第二个字符开始长度为2的字符去掉,以及将字段C中所有的字符“cd”清除掉:select c,insert(c,2,2,''),replace(c,'cd','') from example...

SQL中去空格函数
这个好办啊,你自己写一个函数,然后调用sql中的ltrim,rtrim,然后用raplace把字段中空格都去掉,你再调用自己的函数就可以了啊。

怎么用SQL语言删除表为空的行!!!急!!!
DELETE FROM TABLE_NAME WHERE ISNULL(COLUMN_NAME,'')=''注意 一定要用ISNULL(COLUMN_NAME,'')='' 因为NULL和''看上去是一样的,如果你只判断IS NOT NULL 或者 <>'' 那么很可能会漏掉另外一种情况

Oracle sql语句把字段中的某个字符去掉
insert into test_date2 values(4,'2014-04');insert into test_date2 values(5,'2014-05');insert into test_date2 values(6,'2014-06');commit;3、查询表中数据,可以发现字段中带有字符,'-',select t.* from test_date2 t;4、编写sql,把字段中的字符‘-’去掉; select t*, ...

如何写sql语句去掉oracle返回结果中的空值(NULL)
没有什么简便的方法,但是你可以通过查系统表来减少你写语法的工作,例如:select 'AND ' ||COLUMN_NAME||' IS NOT NULL' from all_tab_columns where table_name = 'table_name'这样这个表的所有字段就自动组成了条件语句。

去掉字段内容中空格符的SQL怎么写?
select REPLACE(字段名, ' ', '') from 表名 update 表名 set 字段名=REPLACE(字段名, ' ', '')

相似回答