sql语句纪要


有些数据完全一样,要清除掉重复的,只保留一条不重复的数据:

DELETE FROM S_Users
WHERE (AI NOT IN
          (SELECT MAX(AI)
         FROM S_Users))


 查数据库所有表名称

SELECT *
FROM information_schema.tables
SELECT name
FROM sysobjects
WHERE (xtype = 'u') AND (NOT (name LIKE 'dtproperties'))


 替换数据库某段数据

用另一个字符串值替换出现的所有指定字符串值。

用第三个表达式替换第一个表达式中出现的所有第二个表达式

语法

REPLACE ( string_expression , string_pattern , string_replacement )


参数

string_expression

要搜索的字符串表达式。string_expression 可以是字符或二进制数据类型。

string_pattern

是要查找的子字符串。string_pattern 可以是字符或二进制数据类型。string_pattern 不能是空字符串 ('')。

string_replacement

替换字符串。string_replacement 可以是字符或二进制数据类型。


返回类型

如果其中的一个输入参数数据类型为 nvarchar,则返回 nvarchar;否则 REPLACE 返回 varchar。

如果任何一个参数为 NULL,则返回 NULL。
注释

REPLACE 根据输入的排序规则执行比较操作。若要以指定的排序规则执行比较操作,可以使用 COLLATE,显示指定输入的排序规则。

update 表A set 电话号码 = replace( replace(电话号码,'17951',''),'12593','')
where 电话号码 like '17951%' or 电话号码 like '12593%' 

 

获取时间差

SELECT DATEDIFF([day]
                , (SELECT  出生日期  FROM A  WHERE (姓名 = '11'))
                , GETDATE()) AS DiffDate

 

 

字符串截取

declare @c varchar(500)  
select @c='123|456|789|012|345'  
select substring(@c,1,charindex('|',@c)-1)  
union  
select substring(stuff(@c,1,charindex('|',@c),''),1,charindex('|',@c)-1)  
union  
select substring(stuff(stuff(@c,1,charindex('|',@c),''),1,charindex('|',@c),''),1,charindex('|',@c)-1)  
union  
select substring(stuff(stuff(stuff(@c,1,charindex('|',@c),''),1,charindex('|',@c),''),1,charindex('|',@c),''),1,charindex('|',@c)-1)  
union  
select substring(stuff(stuff(stuff(stuff(@c,1,charindex('|',@c),''),1,charindex('|',@c),''),1,charindex('|',@c),''),1,charindex('|',@c),''),1,charindex('|',@c)-1)  


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值