Use xsxk;
WITH c_count(id,xb,rs)
AS (SELECT 班级,性别,count(*)
FROM XS GROUP BY 班级,性别 )

SELECT * FROM c_count

-- WITH 的意义

SELECT * INTO #Tem
FROM XS

SELECT *
FROM #Tem

SELECT *
FROM #Tem T
WHERE T.出生日期 BETWEEN '1995-02-09' AND '1995-02-19' -- OK

SELECT TT.学号, CASE WHEN 总学分>60 THEN '优秀' ElSE '不太好' END AS 级别
FROM #Tem TT

SELECT *
FROM [dbo].[Test_2019_t]

SELECT * INTO #Test
FROM [dbo].[xs]

SELECT *
FROM #Test

-- 1. Between…And

SELECT *
FROM XS
WHERE 出生日期
between '1995-02-09' and '1995-07-02'
order by 出生日期 desc

SELECT *
FROM XS
WHERE 总学分
--between 10 and 20
IN (20,21)
order by 总学分 asc

-- 2. IS NULL

SELECT *
FROM XS
WHERE 备注 IS NULL;

-- 3. TOP
SELECT TOP 10 *
FROM XS

-- 4. UNION 去重的作用 -- UNION ALL

SELECT 姓名,学号 -- 表1
FROM xs
UNION
SELECT 姓名,学号 -- 表2 链接起来-- 表三的感觉,
FROM xs3
ORDER BY 学号 ASC
-- UNION --
--表3

SELECT 姓名,学号 -- 表1
FROM xs
WHERE 学号='14311001'

INSERT INTO xs3(姓名,学号)
VALUES('杨天','14311001')

-- 嵌套查询

SELECT 学号 -- 表1
FROM xs3
WHERE 学号='14311001'

SELECT *
FROM XS
WHERE 学号 IN ( SELECT 学号 -- 表1
FROM xs3 ) --('','')

-- inner join
-- left join
-- right join

SELECT *
FROM XS t1
INNER JOIN XS3 t2
ON t1.学号=t2.学号

SELECT *
FROM XS t1
RIGHT JOIN XS3 t2
ON t1.学号=t2.学号

-- 表跟表之间的一个关联关系
use xsxk
select *
from XS3

--

-- CASE WHEN THEN ELSE

SELECT 学号,CASE WHEN 总学分>19 THEN '优秀' ELSE '良' END AS 成绩
FROM XS

-- UPATE

SELECT *
FROM XS3

UPDATE XS3
SET 姓名='xx' ,出生日期='1991-04-05'
WHERE 学号='14341001'

-- 更新

-- 删除

DELETE FROM XS3
WHERE 学号='14311001' -- IN () ,IN

-- INSERT

-- 创建视图 --命令创建

CREATE VIEW view_xs1
AS SELECT 学号,姓名 FROM XS -- 块
-- 1
--2
--3

GO

SELECT *
FROM view_xs1

-- 修改 视图 ALTER 修改

-- DROP

DROP VIEW [dbo].[View_SS] --修改

-- View Insert

SELECT * FROM xs

INSERT INTO view_xs1
VALUES('10000007','王二'); -- 思考,如果我的视图内部有两个以上的表,3,4 ,
-- Insert 思考

SELECT *
FROM view_xs1

UPDATE view_xs1 SET 姓名='ts'
--SELECT * FROM view_xs1
WHERE 学号 = '10000007' --保证条件正确性
SELECT * FROM view_xs1

DELETE view_xs1
WHERE 学号 = '10000007'
SELECT COUNT(*) FROM xs

-- 存储过程
CREATE PROCEDURE QuerT
AS
SELECT * FROM XS

CREATE PROCEDURE Quer @xh char(10)
AS
SELECT * FROM xs WHERE 学号=@xh

-- 如何使用

EXEC [dbo].[QuerT]

EXEC [dbo].[Quer] '14311001' -- 传参数

EXEC sp_helptext Quer

-- 存储过程的查看

-- sp_rename Quer,Quer_NEW --重命名

--
DROP PROCEDURE QuerT

20190412 T-SQL语言二的更多相关文章

  1. SQL语言(二)

    SQL约束与策略 create table student( id int primary key, //主键约束 name ) not null, //非空约束 idCard ) unique, / ...

  2. [SQL]SQL语言入门级教材_SQL数据操作基础(二)

    SQL数据操作基础(初级) netnova 于 -- :: 加贴在 数据库探讨: 为了建立交互站点,你需要使用数据库来存储来自访问者的信息.例如,你要建立一个职业介绍服务的站点,你就需要存储诸如个人简 ...

  3. 数据库与SQL语言

    数据库(DB) :长期储存在计算机中.有组织.可共享的数据的集合. 特点:(1)数据按一定的数据模型组织.描述和储存:(2)较小的冗余度:(3)数据独立性较高:(4)易扩展:(5)可共享(不同用户可按 ...

  4. [SQL]SQL语言入门级教材_跟我学SQL(六)

    跟我学SQL:(一)数据查询 且不说你是否正在从事编程方面的工作或者不打算学习SQL,可事实上几乎每一位开发者最终都会遭遇它.你多半还用不着负责创建和维持某个,但你怎么着也该知道以下的一些有关的SQL ...

  5. [SQL]SQL语言入门级教材_SQL语言快速入门(五)

    SQL语言快速入门(一) SQL是英文Structured Query Language的缩写,意思为结构化查询语言. SQL语言的主要功能就是同各种数据库建立联系,进行沟通.按照ANSI(美国国家标 ...

  6. [SQL]SQL语言入门级教材_SQL语言基本语句介绍(四)

    SQL语言基本语句介绍 • 表的建立 关系数据库的主要特点之一就是用表的方式组织数据.表是SQL语言存放数据.查找数据以及更新数据的基本数据结构.在SQL语言中,表有严格的定义,它是一种二维表,对于这 ...

  7. SQL语言知识点总结

    1.DQL.DML.DDL.DCL的概念与区别 一.SQL(Structure Query Language)语言是数据库的核心语言. SQL的发展是从1974年开始的,其发展过程如下: 1974年- ...

  8. sql语言不经常用,复习

    sql语言不经常用,每次再用都隔好久的时间,以致最基本的都想不起来了,只好转一篇记着= - 找的时候方便 SQL分类:  DDL-数据定义语言(CREATE,ALTER,DROP,DECLARE)  ...

  9. SQL入门(4): 嵌入式SQL语言

    本节讲述内容: 1.嵌入式SQL 语言概述 2.变量声明与数据库连接 3.数据集与游标 4.可滚动游标与数据库的增删改 5.状态捕捉以及错误处理机制 (一)嵌入式SQL语言 之前我们所学的都是交互式S ...

  10. SQL语言:DDL/DML/DQL/DCL

    SQL (Structure Query Language)语言是数据库的核心语言. SQL 的发展是从1974年开始的,其发展过程如下: 1974年-----由Boyce和Chamberlin提出, ...

随机推荐

  1. SQL格式化插件—SQL Pretty Printer

    在SQL Server中我们经常需要编写各种SQL脚本,例如存储过程和函数等,由于在编写过程中,经常会进行调整,格式很乱,可读性很差.对于有强迫症的人来说,看这样的代码非常痛苦,必须要手动对代码进行格 ...

  2. windows nginx配置https访问

    本文主要记录在windows下安装nginx 环境:win10-64位. 1.  到nginx官网上下载相应的安装包,http://nginx.org/en/download.html: 下载进行解压 ...

  3. 为什么要使用NoSQL

    转载自:http://www.infoq.com/cn/news/2011/01/nosql-why [编者按]NoSQL在2010年风生水起,大大小小的Web站点在追求高性能高可靠性方面,不由自主都 ...

  4. kafka调试工具kafkacat的使用

    一. 安装 kafkacat 是基于kafka C语言的librdkafka库的 kafka客户端,不依赖java,小巧轻便,支持主流系统.在高版本的debain.Ubuntu下可以直接apt-get ...

  5. Js 跳出两级循环的方法

    做过一个复杂的验证方法,需要两层each验证之后反正报错的信息.因为双重循环的问题,纠结了很久. /** * 验证input 的值 是否输入 flg:验证成功 false:验证失败 */ functi ...

  6. Java多线程:CountDownLatch、CyclicBarrier 和 Semaphore

    场景描述: 多线程设计过程中,经常会遇到需要等待其它线程结束以后再做其他事情的情况. 有几种方案:   1.在主线程中设置一自定义全局计数标志,在工作线程完成时,计数减1.主线程侦测该标志是否为0,一 ...

  7. OraclePLSQL编程

    PL/SQL编程 pl/sql(procedural language/sql)是Oracle在标准的sql语言上的扩展.pl/sql不仅允许嵌入式sql语言,还可以定义变量和常量,允许使用条件语句和 ...

  8. android9.0适配HTTPS:not permitted by network security policy'

    app功能接口正常,其他手机运行OK,但是在Android9.0的手机上报错 CLEARTEXT communication to 192.168.1.xx not permitted by netw ...

  9. Ubuntu下安装antlr-4.7.1

    简介:antlr工具将语法文件转换成可以识别该语法文件所描述的语言的程序. 例如:给定一个识别json的语法,antlr工具将会根据该语法生成一个程序,该程序可以通过antlr运行库来识别输入的jso ...

  10. 【2019年04月22日】A股最便宜的股票

      太钢不锈(SZ000825) - 当前便宜指数:170.67 - 滚动扣非市盈率PE:4.37 - 滚动市净率PB:0.98 - 动态年化股息收益率:4.79%- 太钢不锈(SZ000825)的历 ...