名站网址导航为大家提供关于数据库教程相关的教程网站知识。
SQL 判断给定日期值(或时间段)所在星期的星期一和星期天的日期
复制具体相关代码 具体相关代码如下:,USE [MSSQL] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE FUNCTION [dbo].[My_OneDay_Get,复制具体相关代码 具体相关代码如下:,SELECT * from My_OneDay_GetWeekFirstAndEndDay('2010-09-01'),复制具体相关代码 具体相关代码如下:,USE [MSSQL] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE FUNCTION [dbo].[MY_Range_GetW,复制具体相关代码 具体相关代码如下:,SELECT * from My_Range_GetWeekFirstAndEndDays('2011-09-01','2011-10-06')
复制具体相关代码 具体相关代码如下:
---ntext数据类型字符替换
create table tt
(
sid INT IDENTITY(1,1),
cont ntext
)
go
insert into tt(cont) values(N'fd sad fdsa 涂聚文工团 缔友计算机信息技术有限公司 可能性 桔柑 ')
go
update tt set cont='fd sad fdsa 涂聚文工团 可能性 缔友计算机信息技术有限公司 桔柑 ' where sid=1
--去空格
EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
--sp_dboption 'pubs', 'select into/bulkcopy', 'true'
GO
DECLARE @ptrval binary(16),@i int,@k int,@f int
select @i=datalength(cont) from tt where sid=1
set @k=1
while @i>1
begin
select @f=ChARINDEX(SPACE(1),cont) from tt where sid=1 ---SPACE(1)
set @f=@f-1
SELECT @ptrval = TEXTPTR(cont) FROM tt WhERE sid=1
if @f>0
UPDATETEXT tt.cont @ptrval @f 1 null
if @k=@i
break
else
set @k=@k 1
continue
end
GO
--sp_dboption 'pubs', 'select into/bulkcopy', 'false'
EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'false'
GO
SELECT * FROM tt
---换英文字母
EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
GO
DECLARE @ptrval binary(16),@i int,@k int,@f int
select @i=datalength(cont) from tt where sid=1
set @k=1
while @i>1
begin
select @f=ChARINDEX('sad',cont) from tt where sid=1 ---SPACE(1)
set @f=@f-1
SELECT @ptrval = TEXTPTR(cont) FROM tt WhERE sid=1
if @f>0
UPDATETEXT tt.cont @ptrval @f 3 'ggg'
if @k=@i
break
else
set @k=@k 1
continue
end
GO
SELECT * FROM tt
---中文字母
EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
GO
DECLARE @ptrval binary(16),@i int,@k int,@f int
select @i=datalength(cont) from tt where sid=1
set @k=1
while @i>1
begin
select @f=ChARINDEX('涂聚文',cont) from tt where sid=1 ---SPACE(1)
set @f=@f-1
SELECT @ptrval = TEXTPTR(cont) FROM tt WhERE sid=1
if @f>0
UPDATETEXT tt.cont @ptrval @f 6 '涂斯博'
if @k=@i
break
else
set @k=@k 1
continue
end
GO
SELECT * FROM tt
EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
GO
DECLARE @ptrval binary(16),@i int,@k int,@f int,@change nvarchar(20),@newstr nvarchar(20),@len int
set @change=N'sad' --要替换的字符
--set @len=datalength(@change)
set @len=len(@change)
set @newstr=N'ggg' --替换成的字符
select @i=datalength(cont) from tt where sid=1
set @k=1
while @i>1
begin
select @f=ChARINDEX(@change,cont) from tt where sid=1 ---SPACE(1)
set @f=@f-1
SELECT @ptrval = TEXTPTR(cont) FROM tt WhERE sid=1
if @f>0
UPDATETEXT tt.cont @ptrval @f @len @newstr
if @k=@i
break
else
set @k=@k 1
continue
end
GO
SELECT * FROM tt
EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
GO
DECLARE @ptrval binary(16),@i int,@k int,@f int,@change nvarchar(20),@newstr nvarchar(20),@len int
set @change=N'涂聚文' --要替换的字符
--set @len=datalength(@change) --用此会出错
set @len=len(@change)
set @newstr=N'涂斯博' --替换成的字符
select @i=datalength(cont) from tt where sid=1
set @k=1
while @i>1
begin
select @f=ChARINDEX(@change,cont) from tt where sid=1 ---SPACE(1)
set @f=@f-1
SELECT @ptrval = TEXTPTR(cont) FROM tt WhERE sid=1
if @f>0
UPDATETEXT tt.cont @ptrval @f @len @newstr
if @k=@i
break
else
set @k=@k 1
continue
end
GO
SELECT * FROM tt
update tt set cont='fd sad fdsa 涂聚文工团 可能性 缔友计算机信息技术有限公司 桔柑 ' where sid=1
select datalength('涂聚文')
select len('涂聚文')
select datalength('sad')
select len('sad')
select len(SPACE(1))
EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
DECLARE @ptrval binary(16),@i int,@k int,@f int,@change nvarchar(20),@newstr nvarchar(20),@len int
set @change=N'涂聚文' --要替换的字符
--set @len=datalength(@change) --用此会出错
set @len=len(@change)
set @newstr=N'涂斯博' --替换成的字符
select @i=datalength(cont) from tt where sid=1
set @k=1
while @i>1
begin
select @f=ChARINDEX(@change,cont) from tt where sid=1 ---SPACE(1)
set @f=@f-1
SELECT @ptrval = TEXTPTR(cont) FROM tt WhERE sid=1
if @f>0
UPDATETEXT tt.cont @ptrval @f @len @newstr
if @k=@i
break
else
set @k=@k 1
continue
end
GO
EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'
DECLARE @ptrval binary(16),@i int,@k int,@f int,@change nvarchar(20),@newstr nvarchar(20),@len int
set @change=N'涂聚文' --要替换的字符
--set @len=datalength(@change) --用此会出错
set @len=len(@change)
set @newstr=N'涂斯博' --替换成的字符
select @i=datalength(cont) from tt where sid=1
set @k=1
while @i>1
begin
select @f=ChARINDEX(@change,cont) from tt where sid=1 ---SPACE(1)
set @f=@f-1
SELECT @ptrval = TEXTPTR(cont) FROM tt WhERE sid=1
if @f>0
UPDATETEXT tt.cont @ptrval @f @len @newstr
if @k=@i
break
else
set @k=@k 1
continue
end
GO