说说今天的收获吧

来源:互联网 发布:mac强制卸载软件 编辑:程序博客网 时间:2024/05/26 09:54


--1计算100天后病毒发作的日期。
  print convert(varchar(50),dateadd(day,100,getdate()),111)
--2凡是入职一年以上的员工,工资增加500¥
select *from Employee 
update Employee set EmpSalary=EmpSalary+1000
where DATEADD(year,1,EmpInTime)<GETDATE()
--3计算1975年10月5日到现在现在相差多少年/月/日/小时?
print datediff(year,'1975-10-5',getdate());
print datediff(month,'1975-10-5',getdate());
print datediff(day,'1975-10-5',getdate());
print datediff(hour,'1975-10-5',getdate())
--4统计2008年入职的员工
select * from CallRecords
where year(EmpInTime)='2008'
--5输出所有数据中通话时间最长的5条记录。
select top 5 *
from CallRecords
order by DATEDIFF (SECOND ,StartDateTime,EndDateTime )desc;
--6将结果集加入一列“通话时长(秒)”
select top 5 *,
通话时长=DATEDIFF (SECOND ,StartDateTime,EndDateTime )
from CallRecords
order by DATEDIFF (SECOND ,StartDateTime,EndDateTime ) desc,CallerNumber  desc;

--三、Case函数用法
--1.1
--use School
-- SELECT * FROM Score
-- SELECT * FROM Student
----90分以上优秀
----80分以上良好
----70分以上中等
----60分以上及格
----60分以下不及格

use Schools
select tSId ,tEnglish,
评级=
 case
 when tEnglish >=90 then '优秀'
 when tEnglish>=80 then '良好'
 when tenglish>=70 then '中等'
 when tenglish>=60 then '合格'
 else
 '不及格'
 end
 from TblScore
 --2、要求,查询结果集中有A B C三列,用SQL语句实现:当A列大于B列时,在C中显示A列的值否则显示B列中的值。
 create table TestCase
   (
   A int,
   B int
   )
   select * from TestCase
   insert into TestCase values(10,20)
   insert into TestCase values(100,32)
  
  
   select  A,B,
   C=
   case
   when A>B then A
   else B
   end
   from TestCase
  
   --3、 在订单表中,统计每个销售员的总销售金额,列出销售员名、总销售金额、称号(>6000金牌,>5500\
   --银牌,>4500铜牌,否则普通)
  select *from MyOrders
   select
   salesAssistant AS 销售员,
   SUM(saveNumber*savePrice) as 销售总金额,
   称号=
   case
       when  SUM(saveNumber*savePrice) >6000 then '金牌'
       when  SUM(saveNumber*savePrice) >5500 then '银牌'
       when  SUM(saveNumber*savePrice) >4500 then '铜牌'
  
   FROM MyOrders
   GROUP BY salesAssistant
  
  select number,
   ( 
     case
     when amount >0 then amount
     else 0
     end
   )as 收入,
   (
     case
     when amount >0 then amount
     else abs(amount)
     end
   )as 支出
  
   from XF
 

原创粉丝点击