Sqlserver 学习笔记

by:授客 QQ1033553122

-----------------------接Part 1-------------------


建立如下数据表

CREATE
TABLE std_table1

(

学号   
   
INT PRIMARY KEY
IDENTITY,

姓名       
CHAR(20)
NOT NULL,

专业方向    
VARCHAR(10)
NOT NULL,

系部代码    
CHAR(2)
NOT NULL,

备注       
VARCHAR(50)

)

CREATE
TABLE
系部

(

系部代码
CHAR(6)
NOT NULL PRIMARY
KEY,

系部名称
VARCHAR(20)
NOT NULL,

系主任     
CHAR(8)

)

CREATE
TABLE
专业

(

专业代码
CHAR(4)
NOT NULL PRIMARY
KEY,

专业名称
VARCHAR(20)
NOT NULL,

系部名称
CHAR(6)
CONSTRAINT fk_wj1 REFERENCES
系部(系部代码)

)

CREATE
TABLE
班级

(

班级代码
CHAR(9)
NOT NULL PRIMARY
KEY,

班级名称
VARCHAR(20),

专业代码
CHAR(4)
CONSTRAINT fk_wj2 REFERENCES
专业(专业代码),

系部代码
CHAR(6)
CONSTRAINT fk_wj3 REFERENCES
系部(系部代码),

备注   
CHAR(50)

)

CREATE
TABLE
学生

(

学号   
CHAR(12)
NOT NULL PRIMARY
KEY,

姓名   
CHAR(8)
NOT NULL,

出生年月
datetime,--注意这里只能用小写

入学日期
datetime,

班级代码
CHAR(9)
CONSTRAINT fk_wj4 REFERENCES
班级(班级代码),

系部代码
CHAR(6)
CONSTRAINT fk_wj5 REFERENCES
系部(系部代码),

专业代码
CHAR(4)
CONSTRAINT fk_wj6 REFERENCES
专业(专业代码)

)


注意以上表的删除顺序:先学生

再班级
再专业
再系部,,,

9.数据的添加

格式:

INSERT [INTO]

表名 (列名1,列名2,……)

VALUES(value1,value2,……)

9.1有vavlues的插入

示例:

前提:“学号”列为标识增量

1--往表std_table中添加一条数据[注意:学号设为了增量标识]

INSERT
INTO std_TABLE VALUES('zs',
'计算机',

'01', '没有')

2--往表std_table中的某些列插入一条数据

INSERT
INTO 
std_TABLE(名称,

专业方向,

系部代码)

VALUES('张三',

'数学',

'04')

9.1.2无values的插入

--往表std_table中插入一批数据

INSERT
std_TABLE(姓名,

专业方向,

系部代码)

SELECT
姓名,

专业方向,

系部代码

FROM
std_TABLE

10
数据查询

10.1--查询表std_table中前10行记录

SELECT
TOP 10
系部代码,

专业方向

FROM
std_table

10.2--查询表std_table前面P的记录结果

SELECT
TOP 50 PERCENT
系部代码,

专业方向

FROM
std_table

10.3--查询表std_table中姓名为k,或者j开头的的所有记录

SELECT
* FROM std_table

WHERE
姓名
LIKE '[kj]%'

10.4--查询表std_table中姓名不为k,或者j开头的的所有记录

SELECT
* FROM std_table

--WHERE
姓名
NOT LIKE '[kj]%'

WHERE
姓名
LIKE '![kj]%'


11
.用查询结果新生新表【类比插入INSERT就好理解了】

格式:SELECT
* INTO
新表表名
from
表名

示例:

SELECT
* INTO new_table FROM std_table

SELECT
* FROM new_table

SELECT
* INTO new_table2 FROM std_table

WHERE
姓名
= 'zs'

SELECT
* FROM new_table2

SELECT
学号,

姓名
INTO new_table1 FROM std_table

SELECT
* FROM new_table1

SELECT
学号,

姓名,

专业方向,

系部代码,

备注

FROM
std_table

下面的例子会创建一个名为"Persons_Order_Backup"

的新表,其中包含了从
Persons

Orders
两个表中取得的信息

SELECT Persons.LastName,Orders.OrderNo

INTO Persons_Order_Backup

FROM Persons

INNER JOIN Orders

ON Persons.Id_P=Orders.Id_P

12.把查询结果新生新表,且把新表为临时表(下面#new_table变成了系统数据库下的临时表)

SELECT
* INTO #new_table FROM std_table

SELECT
* FROM #new_table

SQLServer 学习笔记之超详细基础SQL语句 Part 2的更多相关文章

  1. SQLServer 学习笔记之超详细基础SQL语句 Part 3

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 2------------------- 13. 使用compute对查 ...

  2. SQLServer 学习笔记之超详细基础SQL语句 Part 12(The End)

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 11------------------- 现在,我们希望从 " ...

  3. SQLServer 学习笔记之超详细基础SQL语句 Part 11

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 10------------------- DECLARE @myavg ...

  4. SQLServer 学习笔记之超详细基础SQL语句 Part 10

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 9------------------- 删除约束的语法 ALTER T ...

  5. SQLServer 学习笔记之超详细基础SQL语句 Part 9

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 8------------------- 3 范式的概念 第一范式的目标 ...

  6. SQLServer 学习笔记之超详细基础SQL语句 Part 8

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 7------------------- --触发器str_trigge ...

  7. SQLServer 学习笔记之超详细基础SQL语句 Part 7

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 6------------------- 29 存储过程和触发器 存储过 ...

  8. SQLServer 学习笔记之超详细基础SQL语句 Part 6

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 5------------------- 28 聚合函数 --求平均分 ...

  9. SQLServer 学习笔记之超详细基础SQL语句 Part 5

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 4------------------- 21使用默认 默认(也称默认值 ...

  10. SQLServer 学习笔记之超详细基础SQL语句 Part 4

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 3------------------- 17 带比较运算符的嵌套查询 ...

随机推荐

  1. Centos7安装Nginx实战

    一.背景 最近在写一些自己的项目,用到了nginx,所以自己动手来在Centos7上安装nginx,以下是安装步骤. 二.基本概念以及应用场景 1.什么是nginx Nginx是一款使用C语言开发的高 ...

  2. Tomcat笔记:Tomcat的执行流程解析

    Bootstrap的启动 Bootstrap的main方法先new了一个自己的对象(Bootstrap),然后用该对象主要执行了四个方法: init(); setAwait(true); load(a ...

  3. Disruptor多个消费者不重复处理生产者发送过来的消息

    1.定义事件事件(Event)就是通过 Disruptor 进行交换的数据类型. package com.ljq.disruptor; import java.io.Serializable; /** ...

  4. 散列算法-MD5

    信息摘要技术把明文内容按某种规则生成一段哈西值,即使明文消息只改动了一点点,生成的结果也会完全不同. MD5(Message-digest algorithm 5)就是信息摘要的一种实现,它可以从任意 ...

  5. postgresql 创建用户并创建数据库

    首先通过 sudo -i -u postgres 以管理员身份 postgres 登陆,然后通过 createuser --interactive (-- interactive 是交互式,创建过程可 ...

  6. 价值 1500 美元的 iPhone 值得买吗

    原文链接:价值 1500 美元的 iPhone 值得买吗 最新款 iPhone 的最高配型号在含税的情况下价格远超 1500 美元.价格合理吗?合理.理由如下:1,硬件已与笔记本电脑相当,价格也相当: ...

  7. .33-浅析webpack源码之doResolve事件流(5)

    file => FileExistsPlugin 这个事件流快接近尾声了,接下来是FileExistsPlugin,很奇怪的是在最后才来检验路径文件是否存在. 源码如下: FileExistsP ...

  8. MVC应用程序使用jQuery接收Url的参数

    在这个练习<MVC应用jQuery动态产生数据>http://www.cnblogs.com/insus/p/3410138.html 中,学会了使用jQuery创建url链接,并设置了参 ...

  9. MSSQL标识ID的修改

    今天机缘巧合,无意听到别人闲聊,突发奇想设计一套系统来解决他们的痛点,待我进一步分析下如何执行.回到主题,最近修改ID的工作做了不少.企业补充历史数据用.现总结如下: 1.想把递增ID某一段的ID都加 ...

  10. mybatis-plus排除非表中字段

    使用 transient 修饰 private transient String noColumn; 使用 static 修饰 private static String noColumn; 使用 T ...