当前位置:首页 » 编程语言 » sql空字符怎么去掉
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql空字符怎么去掉

发布时间: 2022-04-21 23:45:54

sql数据库delete删除的字段如果为空字符串怎么删除

假设表有4个字段为FIELD1-FIELD4
只有有一个字段为空就删除
DELETE
BIAO
WHERE
FIELD1
IS
NULL
OR
FIELD2
IS
NULL
OR
FIELD3
IS
NULL
OR
FIELD4
IS
NULL
所有字段为空才删除:
DELETE
BIAO
WHERE
FIELD1
IS
NULL
and
FIELD2
IS
NULL
and
FIELD3
IS
NULL
and
FIELD4
IS
NULL
第二个问题,看不出您的日期字段格式是什么格式,也没看清您想要什么样的结果,相距的时间是什么?是天,还是月,还是年?
假设您的日期字段是DATETIME类型,我列举了您需求的多种情况:
--如果是要几年或几天或几个月,下面三行分别得到总年数或总月数或总天数(如果是一年就会得到365或366)
select
datediff(year,注册时间,getdate())--总年数(整数)
select
datediff(month,注册时间,getdate())--总月数(整数)
select
datediff(day,注册时间,getdate())--总天数(整数)
--如果是要得到几年和几个月和几天的组合结果(与上面的总数结果不同,这里日不会过31,月不会过12,年月日结果是进位关系),按下面的方法得到.
select
cast(datename(year,getdate()-注册时间)-1900
as
varchar)+'年'
+cast(datename(month,getdate()-注册时间)-1
as
varchar)+'个月'
+cast(datename(day,getdate()-注册时间)-1
as
varchar)+'日'
注意:上面两例中,注册时间是您的字段名,GETDATE()是求出的当前日期和时间,如果是别的什么时间字段,如最后登录时间,直接用登录时间替换GETDATE()就行了.
=====================
sql
server中的空值就是这样的(NULL),您说的,应该即不是空值,也不是零长度的字符串,也不是数值零.
所以,当不是空值时,您必须要告诉我们字段是什么类型的.
如果您的字段是VARCHAR,NVARCHAR或CHAR类型的,
那么可能就有三种情况,
1.是空格.
2.是零长度字串.
3.是不可显示的乱字符.
但无论哪一种情况情况,只要是字符型的,用您的语句都不会报错,就是这一句:
delete
biao
where
field1=''
除非字段或表名有错误.
建议:
如果是字符型字段(VARCHAR,NVARCHAR或CHAR类型等)
delete
biao
where
RTRIM(field1)=''
如果是数值型字段(INT,FLOAT,DECIMAL等类型,甚至日期型)都可以用下面的语句删除0值.
delete
biao
where
RTRIM(field1)=0
就是说:
如果不是空值(NULL),就必须要知道字段是什么类型才能确定语法格式.
====================
==============================
最后提醒您,我费了好长时间回答您的问题,为了使用我们下次还有这么大的积极性,最少要加到200分才行啊!

㈡ sql server 2005如何去空格

有二种方法来解决此问题
1.sql
trim()函数去掉两头空格
sql语法中没有直接去除两头空格的函数,但有ltrim()去除左空格rtrim()去除右空格。
合起来用就是sql的trim()函数,即select
ltrim(rtrim(UsrName))
from
table
2.replace
用替换的方式进行处理,只要找到空格就替换
REPLACE用第三个表达式替换第一个字符串表达式中出现的所有第二个给定字符串表达式,示例如下:select
replace(UserName,'
','')
from
table

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

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

㈣ 如何在SQL 中去特殊空格字符

特殊空格,是什么意思?是不是换行符、回车符,之类的。
不管是什么,用 replace( 'abc d', ' ', '') 函数,都可以去掉。
说明:第2个参数,换成你说的特殊空格

㈤ 怎么去掉sql中所有的空格字符

replace(string,‘ ’,‘’)
将空格全部替换成空就行了

㈥ sql语句 怎么去掉一个字段里值的空格 如name=‘阿斯 ’

思路大概是这样:
实用ltrim或者rtrim函数去掉左边或右边符合条件的字符。
如果是oracle环境,看你这里都是字母在前数字在后的格式,假设旧列叫 col_old,新的字母列是col_str,新的数字列是col_num
update table1 set
col_str=rtrim(col_old,'1234567890'),
col_num=to_number(ltrim(col_old,rtrim(col_old,'1234567890')))

sql server 有没有这个函数不知道了,反正这是一个思路吧。供参考而已
sql没有这个东西,那我就给你提个思路吧,语句你自己写了,我没有环境。
用ASCII码和sql的ltrim和rtrim来做,你需要循环找到从左起每个字符都是ASCII>=65(9以上即字母)的,直到找到ASCII<=64的就结束,这样可以把这个字符部分的长度得到,在用trim函数截取一下就可以了。

㈦ sql去掉空格

replace( strSource, strFind, strReplaceAs )

strSource: 源字符串, 如:张 三。
strFind: 要被替换的字符, 如: 空格。
strReplaceAS: 替换成什么字符, 如: 长度为0的字符串。

select replace( '张 三', ' ', '') 即可~

㈧ MSSQL 如何去掉数据库中字符串里的空格

MSSQL 如何去掉数据库中字符串里的空格?

例如:姓名,表格中习惯两个字的经常中间加入1-2个空格,
在MSSQL数据中用下面的语句,清除姓名中的空格:
UPDATE ERPUser SET truename = REPLACE(truename, ' ', '')

这个语句是替换一个空格为空。如果有的名字有几个空格呢,就多执行几遍,直到都替换完成。

去掉空格还有许多其他的语句,广泛学习,利用好,就会产生事半功倍的效果。

例如:
SQL 中使用 ltrim()去除左边空格 ,rtrim()去除右边空格 ,没有同时去除左右空格的函数,要去除所有空格可以用replace(字符串,' ',''),将字符串里的空格替换为空 。 例:去除空格函数。
declare @temp char(50)
set @temp = ' hello sql '
print ltrim(@temp) --去除左边空格
print rtrim(@temp) --去除右边空格
print replace(@temp,' ','') --去除字符串里所有空格
print @temp

>> 输出结果
hello sql
hello sql
hellosql
hello sql

其他数据库也有各自的语句:Oracle中TRIM(character_expression)等。

其他语句手机号码的问题,和空格无关:
如何decimal 或float型转化为varchar型:需要用到转换
UPDATE ERPUser SET Serils = CONVERT(varchar(20), CONVERT(decimal(18, 0), mob))

如果不转换,结果是科学计数法了。