易截截图软件、单文件、免安装、纯绿色、仅160KB

SQLSERVER 一些经典问题总结


SQLSERVER--一些经典问题总结
2007-04-01 01:04:06
 
大中小
/**********************************/
--获得某一天所在年的第一天
declare @a datetime,@b datetime,@sum int,@num int,@res varchar(20)
select @a='1-6-1968'
select @b='2006-4-8'
select @sum=year(@a)
select @res=ltrim(cast(@sum as varchar(20)))+'-1-1'
print @res
/*********************************/
--获得某一天所在月的最后一天
declare @a datetime,@b int,@c int,@res varchar(20)
select @a='2569-8-31'
select @b=month(dateadd(month,1,@a))
select @c=year(@a)
select @res=dateadd(day,-1,cast(@c as varchar(5))+'-'+cast(@b as varchar(20))+'-1')
print @res
/*********************************/
--获得某一天所在年的最后一天
declare @a datetime,@b int,@res varchar(20)
select @a='2026-1-5'
select @b=year(@a)+1
select @res=dateadd(day,-1,cast(@b as varchar(20))+'-1-1')
print @res
/*********************************/
/*返回当前年的最后一天*/
select dateadd(year,datediff(year,'1900-12-31',getdate()),'1900-12-31')
/*返回当月的最后一天*/
declare @a int,@b int,@c varchar(123)
select @a=datepart(year,dateadd(month,1,getdate()))
select @b=datepart(month,dateadd(month,1,getdate()))
select @c=str(@a)+'-'+ltrim(str(@b))+'-1'
print dateadd(day,datediff(day,'1900-1-1',@c)-1,'1900-1-1')
/*打印所有字母*/
if exists (select name from sysobjects where name='ff' and type='fn')
drop function ff
go
create function ff(@a varchar(20),@b int)
returns varchar(20)
as
begin
  declare @res varchar(20)
  select @res=substring(@a,@b,1)
  return @res
end
--先写个函数获得对应位的字符,再打印
declare @a varchar(20),@i int,@len int
select @a='asdfgh'
select @len=len(@a)
select @i=1
while (@i<@len)
begin
  print dbo.ff(@a,@i)
  select @i=@i+1
end
/******************************************************************/
/******************************************************************************/
/******************************************************************************/


相关文档:

SQLServer获取Excel中所有Sheet

E盘根目录新建一个Excel文件aa.xls后测试如下代码
use tempdb
go
if (object_id ('udf_getExcelTableNames' ) is not null )
    drop function dbo .udf_getExcelTableNames
go
create function udf_getExcelTableNames (@filename varchar (1000 ))
returns @t table (id int , name varchar ( ......

ASP.NET恢复SqlServer数据库还原失败

在用Asp.net对备份的数据库文件进行还原的时候,有时候会出现下面的错误异常:
[因为数据库正在使用,所以未能获得对数据库的排它访问权。 RESTORE DATABASE 操作异常终止。已将数据库上下文改为 'master'。]
这个时候,自由等待其他进程释放对应权限后,才可还原成功!有没有解决办法呢?我参照【Java】对这个问题的解决 ......

SqlServer数据库的语句及一些操作整理

临近年终,在工作之余对工作和学习中遇到的问题以及常用的一些知识点做了些整理,以备后用。本文涉及的内容为数据库,算是对开发总结(1)---数据库一文的补充。
1 对于主键设置了Identity的表,在删除表中数据后再往表中插入数据,Identity列不是从1起始了,如果想删除数据后Indentity列仍从1起始,可以用下面代码来删除数据 ......

SQLServer任意列之间的聚合

SQLServer任意列之间的聚合 收藏
sql的max之类的聚合函数只能针对同一列的n行运算,如果对n列运算,一般都用case 语句来判断,如果列少还比较容易写,列多了就麻烦了。这里介绍一个通过xml合并列并转为行集后直接用聚合函数求值的方法,测试用例和代码如下
----------------------------------------------------------- ......

关于SQLServer2005的学习笔记——XML的处理


SQLServer2005
中对
XML
的处理功能显然增强了很多,提供了
query(),value(),exist(),modify(),nodes()
等函数。
关于
xml
,难以理解的不是
SQLServer
提供的函数,而是对
xml
本身的理解,看似很简单的文件格式,处理起来却是非常困难的。本文只是初探一下而已。
详见
SQLServer
联机帮助:
主题
说 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号