MsSqlServer 语句
--假设 成绩>100 优
--假设成绩>90 良
select * from TblScore
select 英语成绩=
(case when tEnglish>90 then '良' when tEnglish>100 then'优' end),数学成绩=(case when tMath>90 then '良' when tMath>100 then'优' end) from TblScore
--第二个练习 1 2 3
select * from user5
select 等级=(case when [level]=1 then'骨灰' when [level]=2 then'菜鸟' when [level]=3then '大神' end) from user5
--第三个练习
--6000 5500 4500
select * from MyOrders
select 销售员,销售总金额=SUM(销售数量*销售价格),称号=(
case
when SUM(销售价格*销售数量)>6000
then '金牌'
when SUM(销售价格*销售数量)>5500
then '银牌'
when SUM(销售价格*销售数量)>4500
then '铜牌'
else
'通牌'
end
) from MyOrders
group by 销售员
--收入 支出
select * from test
select number,收入=(
case
when amount>0
then amount
when amount<0
then 0
end
),支出=(case
when amount<0
then ABS(amount)
when amount>0
then 0
end) from test
--查询全部的英语成绩 并英语的成绩>90 --子查询做
select * from ( select tEnglish from TblScore ) as t where t.tEnglish>90
--查询性别是男 年龄在20岁以上的
select * from( select * from TblStudent where tSGender='男') as t where t.tSAge>20
--1.查询出班级中全部24岁的男生(子查询)
select * from ( select * from TblStudent where tSGender='男') as t where tSAge=24
--2.查询出高一三班和高二二班的全部学生(子查询)
select * from TblStudent where tSClassId in(
select tClassId from TblClass where tClassName='高一一班' or tClassName='高二二班')
--2.查出黑马一期和黑马二期的全部学生
use MyItcast
select * from student
select * from TblClass
select * from student where TClassId in(select TClassId from TblClass where TClassName='黑马一期' or TClassName='黑马二期' )
--3.查询出的总人数,男同学多少人,数学平均成绩(子查询)
select 总人数=(select COUNT(*)from student) ,男同学多少人=(select COUNT(*) from student where TSGender=1),数学平均成绩=(select AVG(TblScore.TSMath) from TblScore)
--9条到16条的数据
select * from student
select top 8 * from student where TSId not in(select top 8 TSId from student) --
--16 到 26
select top 8 * from student where TSId not in( select top 15 TSId from student)
select * from student
use nononodeleteImportant
select * from TblStudent
--每页三条 查第五页的
select * from (
select * ,编号=ROW_NUMBER() over(order by tSid) from TblStudent ) as newTbl where newTbl.编号 between (5-1)*3+1 and 5*3
--每页9条数据 查询13页的
select * from (
select 编号=ROW_NUMBER() over(order by tSId),* from TblStudent) as t where t.编号 between (13-1)*9+1 and 13*9
select tMath,名次= ROW_NUMBER() over(order by tMath) from TblScore
select tMath,名次=RANK() over(order by tMath) from TblScore --rank同样成绩的排名同样
select * from MyOrders
select 商品名称,行号=ROW_NUMBER() over(partition by 商品名称 order by id) from MyOrders --partition by 分区
--销售员的销售总金额
select * from MyOrders
select 销售员,销售总金额=SUM(销售数量*销售价格) from MyOrders
group by 销售员
--2.统计每一个销售员(订单)的销售金额占总销售金额的百分比。
select * ,销售数量*销售价格,
百分比=销售数量*销售价格*1.0/SUM(销售数量*销售价格) over(partition by 销售员 )*100
from MyOrders
--链接查询
--查询这个学生的时候能不能把这个学生所在的班级的名字也显示出来
select TblStudent.tSName,TblStudent.tSAge,TblStudent.tSGender,TblClass.tClassName from TblStudent
inner join TblClass
on TblStudent.tSClassId=TblClass.tClassId
--查询这个学生在哪个班级,他(她)的考试成绩
select TblStudent.tSName,TblStudent.tSGender,TblClass.tClassName,TblScore.tEnglish,TblScore.tMath from TblStudent
inner join TblClass
on TblStudent.tSClassId=TblClass.tClassId
inner join TblScore
on TblStudent.tSId=TblScore.tSId
--创建视图
create view vw_Stu_Cla_Sco_newView
as
select TblStudent.tSName,TblStudent.tSGender,TblClass.tClassName,TblScore.tEnglish,TblScore.tMath from TblStudent
inner join TblClass
on TblStudent.tSClassId=TblClass.tClassId
inner join TblScore
on TblStudent.tSId=TblScore.tSId
--
select * from vw_Stu_Cla_Sco_newView --查询视图
drop view vw_Stu_Cla_Sco_newView --删除视图
--查询年龄超过20岁的学生的姓名、年龄及所在班级
select TblStudent.tSName,TblStudent.tSAge,TblClass.tClassName from TblStudent
inner join
TblClass
on
TblStudent.tSClassId=TblClass.tClassId
inner join
TblScore
on
TblStudent.tSId=TblScore.tSId
where TblStudent.tSAge>20
--
--查询全部学生(參加及未參加考试的都算)及成绩
select * from TblStudent
inner join TblScore
on TblStudent.tSClassId=TblScore.tSId --參加考试的学生
select TblStudent.tSName, TblScore.tMath,TblScore.tEnglish from TblStudent
left join TblScore
on TblStudent.tSClassId=TblScore.tSId --參加考试的学生和没參加考试的学生
select TblStudent.tSName, TblScore.tMath,TblScore.tEnglish from TblStudent
left join TblScore
on TblStudent.tSClassId=TblScore.tSId
where TblScore.tSId is null --没參加考试的学生
--查询全部參加考试的,english分数不为null学生姓名、年龄及成绩
select TblStudent.tSName, TblScore.tMath,TblScore.tEnglish from TblStudent
inner join TblScore
on TblStudent.tSClassId=TblScore.tSId
where TblScore.tEnglish is not null --參加考试的学生,英语成绩不为null
--练习3:查询全部学生(參加和未參加考试)的学生姓名、年龄、成绩,假设没有參加考试显示缺考,假设小于english&math60分显示不及格
use nononodeleteImportant
select TblStudent.tSName,TblStudent.tSAge,英语成绩=(case
when tEnglish is null
then '缺考'
else
CONVERT(nvarchar,tEnglish)
end),数学成绩=(case
when tMath IS null
then '缺考'
else
CONVERT(nvarchar,tMath)
end ),是否及格=(case when tEnglish>60 and tMath>60 then '及格'
else '不及格'
end) from TblStudent left join
TblScore on TblStudent.tSId=TblScore.tSId
select * from TblArea
select t.AreaId,t.AreaName,t1.AreaName from TblArea as t inner join TblArea as t1 on t.AreaPId=t1.AreaId
--声明变量
declare @number int ;
set @number=30;
print @number
select @number
if(@number=30)
begin
print '好帅'
end
else
begin
select '真心恶心'
end
declare @avg int =0
set @avg=(select AVG(tMath) from TblScore)
if(@avg>60)
begin
select top 3 * from TblScore order by tMath desc
end
else
begin
select top 3 * from TblScore order by tMath asc
end
MsSqlServer 语句的更多相关文章
- whdxlib
1 数据库系统实现 实 验 指 导 书 齐心 彭彬 计算机工程与软件实验中心 2016 年 3 月2目 录实验一.JDBC 应用程序设计(2 学时) ......................... ...
- net start sql server (instance)
如何启动 SQL Server 实例(net 命令) 其他版本 可以使用 Microsoft Windows net 命令启动 Microsoft SQL Server 服务. 启动 SQL Se ...
- SQLSERVER 修改数据实例的排序规则
SQL Server服务器修改排序规则的方法 操作及验证步骤: 1 登录数据库后,查看当前安装数据库默认排序规则的两种方式 方式一.使用SQL Server 2014 Management Studi ...
- python第六天 函数 python标准库实例大全
今天学习第一模块的最后一课课程--函数: python的第一个函数: 1 def func1(): 2 print('第一个函数') 3 return 0 4 func1() 1 同时返回多种类型时, ...
- 数据库(MSSQLServer,Oracle,DB2,MySql)常见语句以及问题
创建数据库表 create table person ( FName varchar(), FAge int, FRemark varchar(), primary key(FName) ) 基本sq ...
- MSSQLServer基础06(变量,case,选择语句)
变量 声明:declare @UserName nvarchar(50) 赋值1:set @UserName=N'杨':修改 赋值2:select @UserName=N'牛':修改 输出:print ...
- MSSQLServer基础02(SQL语句入门(脚本、命令))
SQL 全名是结构化查询语言(Structured Query Language),是关系数据库管理系统的标准语言 SQL语句是和DBMS“交谈”专用的语句,不同DBMS都认SQL语法. SQL语句中 ...
- 数据库(MSSQLServer,Oracle,DB2,MySql)常见语句以及问题(续1之拼接字符串)
上一篇文章http://www.cnblogs.com/valiant1882331/p/4056403.html写的太长了,所以就换了一篇,链接上一节继续 字符串的拼接 MySql中可以使用&quo ...
- mssqlserver 查询数据库表结构语句
查询指定表结构的表名.列名.类型.说明.字段长度 select o.name as tableName,c.name as columnName,t.name as columnType,p.valu ...
随机推荐
- 使用JustDecompile修改程序集
原文:使用JustDecompile修改程序集 JustDecompile是Telerik公司推出一个免费的.net反编译工具,支持插件,与Visual Studio 2010,2012 ...
- linux grep命令详解(转)
简介 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它 ...
- Codeforces Round #248 (Div. 1)——Nanami's Digital Board
题目连接 题意: 给n*m的0/1矩阵,q次操作,每次有两种:1)将x,y位置值翻转 2)计算以(x,y)为边界的矩形的面积最大值 (1 ≤ n, m, q ≤ 1000) 分析: 考虑以(x,y)为 ...
- c# Use Properties Instead of Accessible Data Members
advantage of properties: 1 properties can be used in data binding, public data member can not. 2 dat ...
- 【Android进阶】让程序运行效率更高的编程技巧总结
1.在程序中若出现字符串连接的情况,请使用StringBuffer代替String,这样可以减少多次创建String以及垃圾回收所带来的内存消耗 2.尽量使用局部变量.调用方法时传递的参数以及调用中创 ...
- 如何设置一个activity透明
1.在AndroidManifest.xml文件中设置: android:theme="@android:style/Theme.Translucent 此代码固定为全背景透明. 2.在Ac ...
- xhost和XServer相关概念汇总
1.xhost 控制什么人可以访问当前主机上的增强 X-Windows.语法:xhost [ + | - ] [ Name ] 2.xhost 是用来控制X server访问权限的.通常当你从host ...
- asp.net在用户控件中使用ClientScript
在用户空间中调用ClientScript.RegisterClientScriptBlock方法 ClientScript的命名空间是System.Web.UI.Page,并且要实例化之后的Page才 ...
- OTN&互换amp; P-OTN有效降低100G 网络成本 (两)
OTN互换& P-OTN有效降低100G 网络成本 (两) 在全球范围内.网流量的增长速度是空前的,导致此现象的缘由包含云服务的增长.移动宽带和基于互联网的视频点播服务的增长. Cisco估计 ...
- freemarker错误七
1.错误叙述性说明 五月 30, 2014 11:33:57 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严重: Template p ...