posts - 4,  comments - 5,  trackbacks - 0
公告
  2007年11月21日
----加班时间
--假设一个公司的员工8点上班,18点下班,计算她在下班之后多加的班的时间
select top 1
case when 08<datename(hour,getdate()) and 18>datename(hour,getdate())
then case when (datename(hour,getdate())-18)>0 then (datename(hour,getdate())-18) else 0 end
else case when (datename(hour,getdate())-08)>0 then (datename(hour,getdate())-08) else 0 end
end as class
from AppointLog_tb
posted @ 2007-11-21 12:00 人鱼不会笑 阅读(312) 评论(0) 编辑
----分割字符串
--创建函数
create function split
(
  @SourceSql varchar(8000),
  @StrSeprate varchar(10)
)
returns @temp table(F1 varchar(100))
as
begin
  declare @i int
   set @SourceSql=rtrim(ltrim(@SourceSql))
   set @i=charindex(@StrSeprate,@SourceSql)
   while @i>=1
   begin
     insert @temp values(left(@SourceSql,@i-1))
     set @SourceSql=substring(@SourceSql,@i+1,len(@SourceSql)-@i)
     set @i=charindex(@StrSeprate,@SourceSql)
   end
   if @SourceSql<>''
     insert @temp values(@SourceSql)
   return
end
--执行
select * from split('01_02_03','_')
posted @ 2007-11-21 11:56 人鱼不会笑 阅读(2162) 评论(4) 编辑
----消除四列重复数据
--当只有一列数据有重复时想消除它很容易
--但是想消除有多列数据同时重复时就不太容易了,下面是一个简单的实现
delete from [kf_gd_familytraining_tb]
where id not in (select min(id) from [kf_gd_familytraining_tb]
group by globalid,trainingyear,trainingmonth,trainingdate)

以前刚入门的时候为了实现这个功能写了十几句SQL(当时还不知道有group by)
后来通过不断的学习终于把语句缩到四五行了
再后来看到高人写的东东,才知道原来只用一行语句就能实现
再再后来又看到牛人写的东东,才知道原来不用写语句也能实现,当时晕死。
posted @ 2007-11-21 11:50 人鱼不会笑 阅读(173) 评论(1) 编辑
  2007年6月22日
天又下雪了,你幽幽的飞下
飘落我的身上不曾掉落,也不曾融化
是你在牵挂我吗
还是你想知道我的牵挂
婉在手中的雪花啊,不要怕
我已没有热情将你融化
我轻轻的把你吹走,吹向梦的那一边
愿你在她的耳边落下,告诉她
我的思念,我的牵挂
posted @ 2007-06-22 00:24 人鱼不会笑 阅读(42) 评论(0) 编辑