1.

原表: 
courseid coursename score 
------------------------------------- 
1 java 70 
2 oracle 90 
3 xml 40 
4 jsp 30 
5 servlet 80 
------------------------------------- 
为了便于阅读, 查询此表后的结果显式如下( 及格分数为60): 
courseid coursename score mark 
--------------------------------------------------- 
1 java 70 pass 
2 oracle 90 pass 
3 xml 40 fail 
4 jsp 30 fail 
5 servlet 80 pass 
--------------------------------------------------- 
写出此查询语句

 USE T4st

 GO
IF(EXISTS(SELECT * FROM sysobjects WHERE name ='courseTes'))
DROP TABLE courseTes
GO CREATE TABLE courseTes
(
courseid INT NOT NULL PRIMARY KEY IDENTITY,
coursename NVARCHAR(50) NOT NULL,
score INT NOT NULL
) INSERT dbo.courseTes
( coursename, score )
VALUES ( N'java', -- coursename - nvarchar(50)
N'' -- score - int
)
INSERT dbo.courseTes
( coursename, score )
VALUES ( N'oracle', -- coursename - nvarchar(50)
N'' -- score - int
)
INSERT dbo.courseTes
( coursename, score )
VALUES ( N'xml', -- coursename - nvarchar(50)
N'' -- score - int
)
INSERT dbo.courseTes
( coursename, score )
VALUES ( N'jsp', -- coursename - nvarchar(50)
N'' -- score - int
)
INSERT dbo.courseTes
( coursename, score )
VALUES ( N'servlet', -- coursename - nvarchar(50)
N'' -- score - int
)
SELECT * FROM courseTes SELECT t.courseid,t.coursename,t.score,
(
CASE
WHEN t.score > 60 THEN 'pass'
ELSE 'fail'
END
)
AS mark
FROM courseTes AS t

运行结果如下:

2.

表内容:
2005-05-09 胜
2005-05-09 胜
2005-05-09 负
2005-05-09 负
2005-05-10 胜
2005-05-10 负
2005-05-10 负

如果要生成下列结果, 该如何写sql语句?

时间          胜    负
2005-05-09  2     2
2005-05-10  1     2

SQL语句

 USE T4st

 GO
IF(EXISTS(SELECT * FROM sysobjects WHERE name ='Score'))
DROP TABLE Score
GO CREATE TABLE Score
(
TimeId NVARCHAR(50) NOT NULL,
SuccessOrFail NVARCHAR(50) NOT NULL,
) INSERT Score
(TimeId,SuccessOrFail)
VALUES (
N'2005-05-09',
N'胜'
)
INSERT Score
(TimeId,SuccessOrFail)
VALUES (
N'2005-05-09',
N'胜'
)
INSERT Score
(TimeId,SuccessOrFail)
VALUES (
N'2005-05-09',
N'负'
)
INSERT Score
(TimeId,SuccessOrFail)
VALUES (
N'2005-05-09',
N'负'
)
INSERT Score
(TimeId,SuccessOrFail)
VALUES (
N'2005-05-10',
N'胜'
)
INSERT Score
(TimeId,SuccessOrFail)
VALUES (
N'2005-05-10',
N'负'
)
INSERT Score
(TimeId,SuccessOrFail)
VALUES (
N'2005-05-10',
N'负'
) SELECT * FROM Score SELECT s.TimeId AS '时间',
SUM(
CASE
WHEN s.SuccessOrFail ='胜' THEN 1
ELSE 0
END
) AS '胜',
SUM(
CASE
WHEN s.SuccessOrFail ='负' THEN 1
ELSE 0
END
) AS '负'
FROM Score AS s GROUP BY s.TimeId

运行结果如下:

sql service (case when then else end ..... group by)的更多相关文章

  1. 【SQL】CASE与DECODE

    1. case..when case..when语句用于按照条件返回查询结果,如当我们想把emp表的工资按照多少分成几个不同的级别,并分别统计各个级别的员工数.SQL语句如下: select (cas ...

  2. Sql Service 的job作业新建过程

    第一步:打开sql service 找到 SQL SERVER Agent 下的 jobs 如图: 注:如果没有找到,请查看你安装sql service 的版本   通过 select @@VERSI ...

  3. 数据库SQL Service 2014中文版的安装和配置教程

    一.我的电脑环境 1.windows8.1(64位) 2.之前电脑没有安装数据库的软件 二.装机之前准备(我这儿提供百度云保存和下载) 1.下载一个“Sql service 2014中文版” http ...

  4. MySql 数据库导入到 SQL Service

    1.下载安装ODBC驱动程序 地址:http://dev.mysql.com/downloads/connector/odbc/ 注意:系统的版本问题( 我的是64位的win7系统,但是SQL Ser ...

  5. BizTalk 开发系列(四十) BizTalk WCF-SQL Adapter读取SQL Service Broker消息

    SQL Service Broker 是在SQL Server 2005中新增的功能.Service Broker 为 SQL Server 提供队列和可靠的消息传递,可以可用来建立以异步消息为基础的 ...

  6. Sql Service存储过程分页

    一起是用oracle数据库..感觉oracle数据库强大.查询速度是杠杠的.换了家公司用的是SQL SERVICE.以前用了1年现在捡回以前的记忆.动手写了动态SQL过存储过程分页.感觉和oracle ...

  7. MySQL 数据 导入到 SQL Service

    1.下载安装ODBC驱动程序 地址:http://dev.mysql.com/downloads/connector/odbc/ 注意:系统的版本问题( 我的是64位的win7系统,但是SQL Ser ...

  8. 基于sql service会话共享,实现SSO

    1:session的存储基于sql service数据库来存储 2:修改sql service中会话管理的系统存储过程 3:实现几个站点的会话共享 4:应用共享会话,实现单点登录

  9. SQL SERVICE中的锁

    SQL SERVICE中的几个锁 SELECT * FROM dbo.TableName WITH (NOLOCK) --不加任何锁的读,脏读SELECT * FROM dbo.TableName W ...

随机推荐

  1. AttributeError: 'TimeLimit' object has no attribute 'monitor'

    原报错代码部分: env.monitor.start(monitor_path, resume=True, video_callable=lambda count: count % record_vi ...

  2. SGU 194 Reactor Cooling(无源无汇上下界可行流)

    Description The terrorist group leaded by a well known international terrorist Ben Bladen is bulidin ...

  3. Bacon's Cipher(培根密码)

    Description Bacon's cipher or the Baconian cipher is a method of steganography (a method of hiding a ...

  4. Python学习之路2 - 列表和元组

    列表 概念:Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 列表的使用 names = ['zhangsan','lisi','wangwu' ...

  5. Pipeline组Alpha版本发布说明

    Pipeline组Alpha版本发布说明 项目名称 Pipeline 项目版本 Alpha版本 负责人 北京航空航天大学计算机学院 ILoveSE 联系方式 http://www.cnblogs.co ...

  6. 语音信号处理之动态时间规整(DTW)(转)

    这学期有<语音信号处理>这门课,快考试了,所以也要了解了解相关的知识点.呵呵,平时没怎么听课,现在只能抱佛脚了.顺便也总结总结,好让自己的知识架构清晰点,也和大家分享下.下面总结的是第一个 ...

  7. Win10修改编辑hosts文件无法保存怎么办

    Win10无法修改编辑保存hosts文件怎么办?Win10系统默认是没有权限去编辑保存系统里的文件,这也是权限不够才导致修改编辑hosts后无法保存的原因,解决的办法就是把自己的帐户权限给提高就行了. ...

  8. java文件操作(普通文件以及配置文件的读写操作)

    转自:java文件操作(普通文件以及配置文件的读写操作) 读取普通文件 : /** * xiangqiao123欢迎你 如果对代码有疑问可以加qq群咨询:151648295 * * 读取MyFile文 ...

  9. [剑指Offer] 62.二叉搜索树的第k个结点

    题目描述 给定一颗二叉搜索树,请找出其中的第k大的结点.例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值大小顺序第三个结点的值为4. [思路]遍历二叉搜索树,存入一个vector ...

  10. WPF实例,以getFiles()获取文件夹,treeview的应用

    读取电脑硬盘根目录添加到TreeView控件 foreach (DriveInfo item in System.IO.DriveInfo.GetDrives()) { if(item.ToStrin ...