当前位置:首页 » 编程语言 » sql字符串空格

sql字符串空格

发布时间: 2023-08-24 02:01:03

⑴ 怎么判断sql server中某字段含空格

使用CHARINDEX字符函数可以判断某个字符在字段中的位置:

SELECT
CASE CHARINDEX(' ',STCD)
WHEN 0 THEN 'NO FOUND'
ELSE 'EXISTS'
END
FROM
(
SELECT ' ' STCD
)A

参考:
CHARINDEX
返回字符串中指定表达式的起始位置。

语法
CHARINDEX ( expression1 , expression2 [ , start_location ] )

参数
expression1

一个表达式,其中包含要寻找的字符的次序。expression1 是一个短字符数据类型分类的表达式。

expression2

一个表达式,通常是一个用于搜索指定序列的列。expression2 属于字符串数据类型分类。

start_location

在 expression2 中搜索 expression1 时的起始字符位置。如果没有给定 start_location,而是一个负数或零,则将从 expression2 的起始位置开始搜索。

返回类型
int

注释
如果 expression1 或 expression2 之一属于 Unicode 数据类型(nvarchar 或 nchar)而另一个不属于,则将另一个转换为 Unicode 数据类型。

如果 expression1 或 expression2 之一为 NULL 值,则当数据库兼容级别为 70 或更大时,CHARINDEX 返回 NULL 值。当数据库兼容级别为 65 或更小时,CHARINDEX 仅在 expression1 和 expression2 都为 NULL 时返回 NULL 值。

如果在 expression2 内没有找到 expression1,则 CHARINDEX 返回 0。

示例
第一个代码示例返回序列"wonderful"在 titles 表的 notes 列中开始的位置。第二个示例使用可选的 start_location 参数从 notes 列的第五个字符开始寻找"wonderful"。第三个示例显示了当 expression2 内找不到 expression1 时的结果集。

USE pubs
GO
SELECT CHARINDEX('wonderful', notes)
FROM titles
WHERE title_id = 'TC3218'
GO

-- Use the optional start_location parameter to start searching
-- for wonderful starting with the fifth character in the notes
-- column.
USE pubs
GO
SELECT CHARINDEX('wonderful', notes, 5)
FROM titles
WHERE title_id = 'TC3218'
GO

下面是第一个查询和第二个查询的结果集:

-----------
46

(1 row(s) affected)

USE pubs
GO
SELECT CHARINDEX('wondrous', notes)
FROM titles
WHERE title_id='TC3218'
GO

下面是结果集。
-----------
0

(1 row(s) affected)

⑵ SQl中怎么样去掉空格

SQL中如果需要去掉空格的话使用LTRIM或RTRIM。LTRIM去掉表达式左边空格,RTRIM去掉右边。解决方法如下:

1、首先,去掉字符串str开始处(从左侧开始)的空格,可以利用ltrim()函数,l代表left,即为左边。

⑶ 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))

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

热点内容
rsa加密c源代码 发布:2025-03-15 19:53:55 浏览:693
linux解压bin 发布:2025-03-15 19:40:25 浏览:384
存储数据为什么只能使用两种状态 发布:2025-03-15 19:40:21 浏览:264
平方的运算法则 发布:2025-03-15 19:38:57 浏览:971
江苏省苏州市社保卡初始登录密码是多少 发布:2025-03-15 19:38:55 浏览:516
安卓主板哪里有卖 发布:2025-03-15 19:26:10 浏览:31
Q9源码 发布:2025-03-15 19:24:21 浏览:177
芬兰编程教育 发布:2025-03-15 18:59:46 浏览:427
因特网的服务器地址 发布:2025-03-15 18:53:01 浏览:893
手机实体店什么配置好 发布:2025-03-15 18:32:35 浏览:170