SQL去除字段特殊字符或者是字母汉字数字(函数)

CREATE FUNCTION [dbo].[f_Removezimuhanzishuzi]
(
@str VARCHAR(500)
)
RETURNS VARCHAR(500)
AS
BEGIN
-- ‘%[1-9]%‘ 所有數字
-- ‘%[A-Za-z]%‘ 所有字母
-- ‘%[A-Za-z1-9]%‘ 所有數字與字母
-- .... 組合使用,依此類推
WHILE PATINDEX(‘%[A-Z,a-z,0-9,吖-咗]%‘,@str) > 0
SET @str = STUFF(@str,PATINDEX(‘%[A-Z,a-z,0-9,吖-咗]%‘,@str),1,‘‘)
RETURN @str
END

GO

时间: 2024-12-30 16:42:04

SQL去除字段特殊字符或者是字母汉字数字(函数)的相关文章

SQL Server 字段提取拼音首字母

目前工作中遇到一个情况,需要将SQL Server中的一个字段提取拼音的首字母,字段由汉字.英文.数字以及“-”构成,百度了一堆,找到如下方法,记录一下,以备后用! 首先建立一个函数 --生成拼音首码 CREATE function fn_GetPy(@str nvarchar(4000)) returns nvarchar(4000) --WITH ENCRYPTION as begin declare @intLen int declare @strRet nvarchar(4000) de

sql中如何按某字段值的首字母分组?

sql中如何按某字段值的首字母分组?如一字段有值: x001 x003 p005 y0093 分组结果应为.X=2,p=1,y=1 ------解决方案--------------------如一字段有值: x001 x003 p005 y0093 分组结果应为.X=2,p=1,y=1 select left(col,1) , count(*) from tb group by left(col,1)

SQL去除数据库表中tab、空格、回车符等特殊字符的解决方法

原文:SQL去除数据库表中tab.空格.回车符等特殊字符的解决方法 按照ASCII码, SELECT char(64) 例如64 对应 @,则 SELECT REPLACE('[email protected]', CHAR(64), 'kk'); 则结果为 abckkqq.com 依此类推, 去掉其他特殊符号,参考ASCII码对照表, 去掉tab符号为 select REPLACE('要替换的字符或列名',char(9),'替换的目标字符') 去掉空格符号为 select REPLACE('要

sql server 提取汉字/数字/字母的方法

ql server 提取汉字/数字/字母的方法 --提取数字IF OBJECT_ID('DBO.GET_NUMBER2') IS NOT NULLDROP FUNCTION DBO.GET_NUMBER2GoCREATE FUNCTION DBO.GET_NUMBER2(@S VARCHAR(100))RETURNS VARCHAR(100)ASBEGINWHILE PATINDEX('%[^0-9]%',@S) > 0BEGINset @s=stuff(@s,patindex('%[^0-9]

sql去除重复语句

转自芙蓉清秀的BLOG http://blog.sina.com.cn/liurongxiu1211 sql去除重复语句 (2012-06-15 15:00:01) sql 单表/多表查询去除重复记录 单表distinct 多表group by group by 必须放在 order by 和 limit之前,不然会报错 ************************************************************************************ 1.查

sqlServer去除字段中的中文

很多时候数据库表中某些字段是由中文和字母或数字组成,但有时我们又需要将字段中的中文去掉.想要实现这种需求的方法有很多,下面就是其中一种解决方法. 首先我们先建立测试数据 create table test( id int primary key identity(1,1), name varchar(20) not null ) insert into test(name) values('测试2') insert into test(name) values('测试a') insert int

SQL 判断字段中指定字符出现的次数

原文地址:SQL 判断字段中指定字符出现的次数 原理:将指定字符转换为空,原长度减去转换后的长度就是指定字符的次数. 在做数据处理时遇到一个SQL操作的问题就是有一列关键词字段,字段中包含各种乱七八糟的字符,其中有一个双引号“ 是关键词中不需要的,所以需要去掉,而一般只有带两个”的才需要去除,所以首先得先找到含有双引号的且双引号出现两次的值,然后删除.这里提取指定符串在 字段中的出现次数SQL为: select   *   from   google_keyword    where   len

c#随机生成汉字、字母、数字

/// <summary> /// 替换变量 /// </summary> /// <param name="content"></param> /// <returns></returns> public static string replaceBianLiang(string content) { content = content.Replace("{当前时间}", DateTime.N

正则表达式之判断用户注册信息是否为汉字、字母和数字

一般在写用户注册模块的时候都在对注册的用户名进行判断,查看一下有没有[email protected]#$%^&*()等这样的特殊字符,注册信息里一般将这些字符视为非法字符不允许注册.怎么进行判断呢,这里就用到了正则表达式了. 先来解释一下下面几个正则表达式: String chinese = "^[\\u4E00-\\u9FA5\\uF900-\\uFA2D]+$";                     /**这个正则表达式用来判断是否为中文**/ //用来用户注册.匹配