今日小总结(复杂条件查询)
来源:互联网 发布:淘宝延长收货最多 编辑:程序博客网 时间:2024/05/16 19:33
use Test
select * from CallRecords
--1计算100天后病毒发作的日期。
print convert(varchar(50),dateadd(day,100,getdate()),111)
--2凡是入职一年以上的员工,工资增加500¥
use MyBD3
select * from T_Employee
update T_Employee set FSalary=FSalary+500 where DATEADD(YEAR,1,FInDate)<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 FName as 员工名 from T_Employee where YEAR(FInDate)=2008
--5输出所有数据中通话时间最长的5条记录。
use Test
select top 5 *, DATEDIFF(SECOND,StartDateTime,EndDateTime) as 通话时长 from CallRecords order by DATEDIFF(SECOND,StartDateTime,EndDateTime) desc ,CallerNumber desc
--6将结果集加入一列“通话时长(秒)”
alter table CallRecords add PhoneLone int
select * from CallRecords
update CallRecords set PhoneLone=303 where Id=1;
update CallRecords set PhoneLone=70 where Id=2;
update CallRecords set PhoneLone=180 where Id=3;
update CallRecords set PhoneLone=128 where Id=4;
update CallRecords set PhoneLone=306 where Id=5;
update CallRecords set PhoneLone=600 where Id=6;
update CallRecords set PhoneLone=69 where Id=7;
update CallRecords set PhoneLone=271 where Id=8;
update CallRecords set PhoneLone=608 where Id=9;
update CallRecords set PhoneLone=608 where Id=10;
alter table CallRecords drop column PhoneLone
delete from CallRecords where Id>=11
select *, DATEDIFF(SECOND,StartDateTime,EndDateTime) as 通话时长 from CallRecords order by Id asc
--90分以上优秀 80分以上良好 70分以上中等 60分以上及格 60分以下不及格
use TextSchool
SELECT * FROM T_Score
SELECT * FROM T_Student
select FscoreId as 学号,FEnglish as 英语成绩,Fmath as 数学成绩,
case
when FEnglish>90 then '优秀'
when FEnglish>80 then '良好'
when FEnglish>70 then '中等'
when FEnglish>60 then '及格'
else '不及格'
end as 评级
from T_Score
--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,
case
when A>B then A
else B
end C
from TestCase
--3、在订单表中,统计每个销售员的总销售金额,列出销售员名、总销售金额、称号(>6000金牌,>5500银牌,>4500铜牌,否则普通)
use Test
select * from MyOrders
select 销售员,总销售金额=SUM(销售数量*销售价格),
case
when SUM(销售数量*销售价格)>6000 then '金牌'
when SUM(销售数量*销售价格)>5500 then '银牌'
when SUM(销售数量*销售价格)>4500 then '铜牌'
else '普通'
end 称号
from MyOrders
group by 销售员
--单号 金额
--Rk1 10
--Rk2 20
--Rk3 -30
--Rk4 -10
--将上面的表输出为如下的格式:
--单号 收入 支出
--Rk1 10 0
--Rk2 20 0
--Rk3 0 30
--Rk4 0 10
create table A
(
Number varchar(50),
Ammont float
)
insert into A values('RK1',10.00)
insert into A values('RK2',20.00)
insert into A values('RK3',-30.00)
insert into A values('RK4',-10.00)
select Number 单号,
case
when Ammont>0 then Ammont
else 0
end 收入,
case
when Ammont<=0 then ABS(Ammont)
else 0
end 支出
from A
- 今日小总结(复杂条件查询)
- 11.6今日小总结(子查询,分页和join)
- 复杂搜索条件查询
- 复杂条件的查询
- 复杂条件查询
- OrmLite—复杂条件查询
- Android ormLite复杂条件查询
- Spring JPA 复杂条件查询
- Android中使用OrmLite(二):复杂条件查询
- OrmLite框架 —— OrmLite 复杂条件查询(二)
- C#连接SQL多条件复杂查询
- linux find命令复杂条件查询
- HBase高性能复杂条件查询引擎
- HBase高性能复杂条件查询引擎
- HBase高性能复杂条件查询引擎
- HBase高性能复杂条件查询引擎
- HBase高性能复杂条件查询引擎
- HBase高性能复杂条件查询引擎
- Android开发_Android如何获取开机启动项列表_查找package是否有开机启动权限
- .net jquery jsonp跨域请求
- Constant 0PACC for Ledger !* does not contain any value
- 成员指针
- mxGraph常用功能代码
- 今日小总结(复杂条件查询)
- Content-Type一览
- 库克究竟与乔布斯差在哪里?
- Nutch 命令介绍
- 3.封装继承与多态之objective-c
- 算法——字节高低位交换
- 二叉树链式存储的实现
- 黑马程序员---继承,final,
- 母函数代码思路的详细解释