知识点SQL语句学习详细总结

知识点SQL语句学习详细总结
知识点SQL语句学习详细总结

一. 数据库简介和创建

1. 系统数据库

在安装好SQL SERVER后,系统会自动安装5个用于维护系统正常运行的系统数据库:

(1)master:记录了SQL SERVER实例的所有系统级消息,包括实例范围的元数据(如登录帐号)、端点、链接服务器和系统配置设置。

(2)msdb:供SQL SERVER 代理服务调度报警和作业以及记录操作员的使用,保存关于调度报警、作业、操作员等信息。(备份还原时)

(3)model:SQL SERVER 实例上创建的所有数据库的模板。

(4)tempdb:临时数据库,用于保存临时对象或中间结果集,为数据库的排列等操作提供一个临时工作空间。(每次启动都会重新创建)

(5)Resource:一个只读数据库,包含了SQL SERVER 的所有系统对象。(隐藏的数据库)

2. 数据库的组成

2.1 数据文件

(1)主要数据文件:扩展名为 .mdf ,每个数据库有且只能有一个。

(2)次要数据文件:扩展名为 .ndf ,可以没有或有多个。

2.2 日志文件

扩展名为 .ldf ,用于存放恢复数据库的所有日志信息。

2.3 数据的存储分配

(1)数据文件和日志文件的默认存放位置为:\Programe Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data文件夹。

(2)数据的存储分配单位是数据页。一页表是一块8KB的连续磁盘空间。

(3)页是存储数据的最小空间分配单位,页的大小决定了数据库表中一行数据的最大大小。

3. SQL语句数据库操作

(1)创建数据库

CREATE DATABASE database_name

二. SQL基础

SQL(Structured Query Language,结构化查询语言)是用户操作关系数据库的通用语言。

1. SQL功能概述

2. 系统提供的数据类型2.1 数值数据类型

数据类型说明存储空间

bit bit数据类型是整型,其值只能是0、1或空值。这种数据类型用于存储只有两种可

能值的数据,如Yes 或No、True 或False 、On 或Off. (很省空间的一种数据

类型,如果能够满足需求应该尽量多用。)

1字

2.2 普通编码字符串类型

char 和varchar的区别:

若某列数据类型为varchar(20),存字符串”Jone”时,只占用4个字节,而char (20)会在为填满的空间中填写空格。所以, varchar类型比char类型更节省空间,但它的开销会大一些,处理速度也慢一些。因此,n值比较小(小于4),用char类型更好些。

2.3 统一编码字符串类型(Unicode)

三. SQL数据操作语言

1.数据查询语句

1.1 查询语句的基本结构

SELECT <目标列名序列> --需要哪些列

From <表名> --来自哪张表

[WHERE <行选择条件>]

[GROUP BY <分组依据列>]

[HAVING <组>]

[ORDER BY <排序依据列>]

SELECT子句用于指定输出的字段;

FROM子句用于指定数据的来源;

WHERE子句用于指定数据的选择条件;

GROUP BY子句用于对检索到的记录进行分组;

HAVING 子句用于指定组的选择条件;

ORDER BY 子句用于对查询的结果进行排序;

以上子句中,SELECT 子句和FROM子句是必需的,其它是可选的。

1.2 单表查询

1.2.1选择表中若干列

(1)查询指定的列

SELECT列名FROM表名

例子:SELECT Sname,Sno FROM Student

(2)查询全部列

SELECT * FROM表名

例子:SELECT * FROM Student

(3)查询经过计算的列

SELECT列名FROM表名

例子:SELECT Sname,year(getdata()) - year(Birthdate) FROM Student 1.2.2 选择表中的若干元祖

(1)消除取值相同的行:DISTINCT

SELECT DISTINCT Sno FROM表名

例子:SELECT DISTINCT Sno FROM Student

(2)查询满足条件的元祖

a.比较大小

例子:SELECT Sname FROM Student WHERE year(getdata()) - year(Birthdate) < 20

b.确定范围

BETWEEN…AND 和NOT B ETWEEN…AND可用于查找属性值在或不在指定范围。

列名 | 表达式 | [NOT] BETWEEN 下限值AND上限值

BETWEEN…AND代表的范围是在上限值和下限值之间(包括边界值),即为true。

NOT BETWEEN…AND代表的范围是不在上限值和下限值之间(不包括边界值),即为true。(若判断值为边界值时,为false)

例子:SELECT Sno,Cno FROM SC WHERE Grade BETWEEN 80 AND 90

此查询等价于:SELECT Sno,Cno FROM SC WHERE Grade >= 80 AND Grade <= 90

例子:SELECT Sno,Cno FROM SC WHERE Grade NOT BETWEEN 80 AND 90

此查询等价于:SELECT Sno,Cno FROM SC WHERE Grade < 80 OR Grade > 90

c. 确定集合

IN运算符的含义:当列中的值和集合中的某个常量值相等时,结果为True。

NOT IN运算符的含义:当列中的值和集合中的全部常量值都不相等时,结果为True。

例子:SELECT Sno FROM Student WHERE Dept IN ('信息管理系','计算机系')

此查询等价于:SELECT Sno FROM Student WHERE Dept = '信息管理系' OR Dept = '计算机系')

例子:SELECT Sno FROM Student WHERE Dept NOT IN ('信息管理系','计算机系')

此查询等价于:SELECT Sno FROM Student WHERE Dept != '信息管理系' AND Dept != '计算机系')

d. 字符串匹配

Like运算符用于查找指定列中与匹配串匹配的元祖。

列名 [NOT] LIKE <匹配串>

例子:

(查询姓“张”的学生详细信息)

SELECT * FROM Student WHERE Sname LIKE'张%'

(查询不姓“张”的学生详细信息)

SELECT * FROM Student WHERE Sname NOT LIKE'张%'

(查询姓“张”、“李”的学生详细信息)

SELECT * FROM Student WHERE Sname LIKE'[张李]%'

(查询名字的第二个字为“小” 或“大”的学生详细信息)

SELECT * FROM Student WHERE Sname LIKE'_[小大]%'

e. 涉及空值的查询

空值(NULL)在数据库中有特殊含义,表示当前不确定或未知的值。判断是否为NULL时,不可用普通的比较运算符,需用IS NULL

例子:SELECT Sno FROM Student WHERE Grade IS NULL

1.2.3 对查询结果进行排序

将查询结果按照指定的顺序显示。ASC表示按列值升序排列(从上往下,值从大到小)。DESC表示按列值降序排列(从上往下,值从小到大)。默认为ASC。

ORDER BY <列名> [ASC|DESC]

例子:SELECT Sno,Grade FROM SC ORDER BY Grade DESC

1.2.4 使用聚合函数统计数据

聚合函数也称为统计函数或集合函数,作用是对一组值进行计算并返回一个统计结果。

上述函数除COUNT(*) 外,其它函数在计算过程中均忽略NULL值

(统计学生总人数)

SELECT COUNT(*) FROM Student

(统计“001”学号学生的考试平均成绩)

SELECT AVG(Grade) FROM SC WHERE Sno = '001'

(查询“C001”号课程考试成绩的最高分和最低分)

SELECT MAX(Grade) 最高分,MIN(Grade) 最低分FROM SC WHERE Cno = 'C001'聚合函数不能出现在WHERE子句中!

1.2.5 对数据进行分组统计

需要先对数据进行分组,然后再对每个组进行统计。分组子句GROUP BY。在一个查询语句中,可以用多个列进行分组。

分组子句跟在WHERE子句的后面:

GROUP BY<分组依据列>[,...n]

[HAVING <组筛选条件>]

(1)使用GROUP BY 子句

(统计每门课程的选课人数,列出课程号和选课人数)

SELECT Cno as课程号, COUNT(Sno) as选课人数From SC Group BY Cno

(统计每个学生的选课门数和平均成绩)

SELECT Sno 学号, COUNT(*) 选课门数,AVG(Grade) 平均成绩 From SC Group BY S no

带WHERE子句的分组(统计每个系的女生人数)

SELECT Dept, COUNT(*)女生人数From Student Where Sex = '女'Group BY Dep t

(2)使用HAVING 子句

HAVING子句用于对分组后的统计结果再进行筛选,它的功能与WHERE子句类似,它用于组而不是单个记录。在HAVING子句中可以使用聚合函数,但在WHERE子句中不能,通常与GROUP子句一起使用。

(查询选课门数超过3门的学生的学号和选课门数)

SELECT Sno 学号, COUNT(*) 选课门数,AVG(Grade) 平均成绩 From SC Group BY S no HAVING COUNT(*) > 3

(3)WHERE 、GROUP BY 、HAVING 的作用及执行顺序

?WHERE子句用于筛选FROM子句中指定的数据所产生的行数据。?GROUP BY子句用于对经WHERE子句筛选后的结果数据进行分组。?HAVING子句用于对分组后的统计结果再进行筛选。

可以分组操作之前应用的筛选条件,在WHERE子句中指定它们更有效,这样可以减少参与分组的数据行。在HAVING子句中指定的筛选条件应该是那些必须在执行分组操作之后应用的筛选条件。

(查询计算机系和信息管理系每个系的学生人数)

第一种:

SELECT Dept,COUNT(*) FROM Student GROUP BY Dept Having Dept in('计算机系', '信息管理系')

第二种:

SELECT Dept,COUNT(*) FROM Student WHERE Dept in ('计算机系','信息管理系')G ROUP BY Dept

以上例子比较:第一种是按照系分组好了之后,只采取所有系中的两个系,显然效率不高。而第二种是先进行WHERE筛选条件之后,再进行GROUP BY 计算,显示更好。

1.3 多表连接查询

若一个查询同时涉及到两张或以上的表,则称为连接查询。

1.3.1 内连接

使用内连接时,如果两个表的相关字段满足条件,则从两个表中提取数据组成新的记录。

FROM表1 [INNER] JOIN表2ON <连接条件>

注意:连接条件中的连接字段必须是可比的,必须是语义相同的列。

(查询学生及选课的详细信息)

SELECT * FROM Student INNER JOIN SC ON Student.Sno = SC.Sno

(查询计算机系学生的选课情况,列出该学生的名字、所修课程号、成绩)------行选择条件

SELECT Sname,Cno,Grade FROM Student INNER JOIN SC ON Student.Sno = SC.Sn o WHERE Dept = '计算机系'

(统计每个系的平均成绩) ------分组的多表查询

SELECT Dept,AVG(Grade) AS AverageGrade FROM Student S INNER JOIN SC ON S. Sno = SC.Sno Group BY Dept

(统计计算机系每个学生的选课门数、平均成绩、最高成绩、最低成绩)------分组和行选择条件的多表连接查询

SELECT Sno,COUNT(*),AVG(Grade),MAX(Grade),MIN(Grade) FROM Student S JOIN SC ON S.Sno = SC.Sno WHERE Dept = '计算机系'Group BY Dept

1.3.2 自连接

自连接是一种特殊的内连接,相互连接的表在物理上是一张表,但在逻辑上可以看做是两张表。

FROM表1AS T1 JOIN表1AS T2

通过为表取别名的方法,可以让物理上的一张表在逻辑上成为两张表。(一定要为表取别名!)

(查询与刘晨在同一个系学习的学生的姓名、所在系)

SELECT S1.Sname,S1.Dept FROM Student S1 JOIN Student S2

ON S1.Dept = S2.Dept ---同一个系的学生

WHERE S2.Sname = '刘晨' ---S2表作为查询条件

AND S1.Sname != '刘晨' ----S1表作为结果表,并从中去掉‘刘晨’本人信息

1.3.3 外连接

在内连接操作中,只有满足条件的元祖才能出现在查询结果集中。

外连接是只限制一张表中的数据必须满足条件,而另一张表的数据可以不满足条件。

FROM 表1LEFT|RIGHT [OUTER] JOIN表2ON <连接条件>

? 1 LEFT [OUTER] JOIN称为左外连接,含义是限制表2中的数据必须满足条件,但不管表1中的数据是否满足条件,均输出表1中的数据。

LEFT [OUTER] JOIN称为右外连接,含义是限制表1中的数据必须满足条件,但不管表2中的数据是否满足条件,均输出表2中的数据。

内连接与外连接的区别:

内连接:表A与表B进行内连接,则结果为两个表中满足条件的记录集,即C 部分。

外连接:如果表A和表B进行左外连接,则结果为记录集A + 记录集C;如果表A和表B进行右外连接,则结果为记录集B + 记录集C。

(查询没有人选的选修课程名)

SELECT Cname FROM Course C LEFT JOIN SC ON https://www.360docs.net/doc/807622698.html,o = https://www.360docs.net/doc/807622698.html,o WHERE https://www.360docs.net/doc/807622698.html,o I S NULL

例子解析:如果存在部分课程为被人选择,则必定在Course表中有但在SC表中没有出现,即在进行外连接时没人选的课程在与SC表构成的连接结果集中,对应的Sno、Cno、Grade列必定为空,所以只需**在连接后的结果中选出**SC 表中Sno或Cno为空的元祖即可。

(统计计算机系每个学生的选课门数,包括没选课的学生)

SELECT S.Sno AS学号,COUNT(https://www.360docs.net/doc/807622698.html,o) AS选课门数FROM Student S LEFT JOIN SC ON S.Sno = SC.Sno WHERE Dept = '计算机系'GROUP BY S.Sno

例子解析:上述例子要求统计每个学生的….,所以在GROUP BY分组时,是按照学生表中的学号来分。而对于聚合函数COUNT,上述要求统计每个学生的选课门数,若写成COUNT(S.Sno)或COUNT(*),则对没选课的学生都返回1,因为在外连接结果中,S.Sno不会是NULL,而COUNT(*)函数本身也不考虑NULL,它是直接对元祖个数进行计数。

注意:在对外连接的结果进行分组、统计等操作时,一定要注意分组依据列和统计列的选择。

1.4 使用TOP限制结果集行数

在使用SELECT语句进行查询时,有时只需要前几行数据。

TOP (expression) [PERCENT][WITH TIES]

?expression:指定返回行数的数值表达式。如果指定了PERCENT,expression将隐式转换成float,否则是bigint

?PERCENT:指定只返回结果集中前expression% 行数据。

?WITH TIES:指定从基本结果集中返回额外的数据行(只有在SELECT 子句中包含了ORDER BY子句时,才能使用)。

TOP谓词写在SELECT单词的后面(如果有DISTINCT,则在DISTINCT后面)。(查询考试成绩最高的3个成绩。列出学号、课程号、成绩)

SELECT TOP 3 Sno,Cno,Grade FROM SC ORDER BY Grade DESC

若要包括并列第3名的成绩:

SELECT TOP 3 Sno,Cno,Grade WITH TIES FROM SC ORDER BY Grade DESC

2.数据更改功能

2.1 插入数据

INSERT INTO表名[(列名)] VALUES (值)

(1)简单插入语句

INSERT INTO Student VALUES ('001','陈东','男','1996/6/23','信息管理系')

(2)多行插入语句

INSERT INTO SC VALUES('001','C001',90),

('001','C002',30),

('001','C005',NULL)

(3)不按表顺序插入语句

按与表列顺序不同的顺序插入数据

INSERT INTO Student(Sno,Sname,Sex,Dept) VALUES ('001','陈东','男','1996/ 6/23','信息管理系')

2.2 更新数据

UPDATE表名SET列名 = 值

(1)无条件更新

UPDATE SC SET Grade = Grade+10

(2)有条件更新

(将“C001”号课程的学分改成5分)

UPDATE Course SET Grade = 5WHERE Cno = 'C001'

(将计算机系全体学生的成绩加5分)

UPDATE SC SET Grade = Grade+5FROM SC JOIN Student S ON S.Sno = SC.Sno WH ERE Dept = '计算机系'

2.3 删除数据

DELETE [TOP (expression) [PERCENT]]

FROM表名

(1)无条件删除

DELETE FROM Student

(2)有条件删除

(删除所有考试成绩不合格的学生的选课记录)

DELETE FROM SC WHERE Grade < 60

(删除Student表中2.5%的行数据)

DELETE TOP (2.5) PERCENT FROM Student

四. 高级查询

1. CASE函数

CASE函数是一种多分支函数,它可以根据条件列表的值返回多个可能的结果表达式中的一个。

1.1 简单CASE函数

CASE input_expression

WHEN when_expression THEN result_expression

[...n]

[ELSE else_expression]

END

?input_expression:所计算的表达式,可以是一个变量名、字段名、函数或子查询。

?when_expression:要与input _expression进行比较的简单表达式。简单表达式中不可包含比较运算法,只需给出被比较的表达式或值。

?else_expression:比较结果均不为TRUE时返回的表达式。

(查询选了JAVA课程的学生的学号、姓名、所在系、成绩,

若所在系为“计算机系”,则显示“CS”;若所在系为“信息管理系”,则显示“IM”;若所在系为“通信工程系”,则显示“COM”)

SELECT S.Sno 学号,Sname 姓名,

CASE Dept

WHEN'计算机系'THEN'CS'

WHEN'信息管理系'THEN'IM'

WHEN'通信工程系'THEN'COM'

END AS所在系,Grade 成绩

FROM Student S JOIN SC ON S.Sno = SC.Sno

JOIN Course C ON https://www.360docs.net/doc/807622698.html,o = https://www.360docs.net/doc/807622698.html,o

WHERE Cname = 'Java'

1.2 搜索CASE函数

简单 CASE函数只能将input_expression与一个单值进行比较,如果需要跟一个范围内的值进行比较,就需要搜索CASE函数。

CASE

WHEN Boolean_expression THEN result_expression

[...n]

[ELSE else_expression]

END

?Boolean_expression :比较表达式,可以包含比较运算符,直接将两者进行比较。

上述例子也可以用搜索CASE函数:

SELECT S.Sno 学号,Sname 姓名,

CASE

2021年SQL语句大全实例

SQL语句实例 欧阳光明(2021.03. 07) 表操作 例1对于表的教学管理数据库中的表STUDENTS ,可以定义如下: CREATE TABLE STUDENTS (SNO NUMERIC (6, 0) NOT NULL SNAME CHAR (8) NOT NULL AGE NUMERIC(3,0) SEX CHAR(2) BPLACE CHAR(20) PRIMARY KEY(SNO)) 例2对于表的教学管理数据库中的表ENROLLS ,可以定义如下:CREATE TABLE ENROLLS (SNO NUMERIC(6,0) NOT NULL CNO CHAR(4) NOT NULL GRADE INT PRIMARY KEY(SNO,CNO) FOREIGN KEY(SNO) REFERENCES STUDENTS(SNO) FOREIGN KEY(CNO) REFERENCES COURSES(CNO)

*欧阳光明*创编2021.03.07 CHECK ((GRADE IS NULL) OR (GRADE BETWEEN 0 AND 100))) 例3根据表的STUDENTS表,建立一个只包含学号.姓名.年龄的女学生表。 CREATE TABLE GIRL AS SELECT SNO, SNAME, AGE FROM STUDENTS WHERE SEX=女?; 例4删除教师表TEACHER。 DROP TABLE TEACHER 例5在教师表中增加住址列。 ALTER TABLE TEACHERS ADD (ADDR CHAR(50)) 例6把STUDENTS表中的BPLACE列删除,并且把引用 BPLACE列的所有视图和约束也一起删除。 ALTER TABLE STUDENTS DROP BPLACE CASCADE 例7补充定义ENROLLS表的主关键字。 ALTER TABLE ENROLLS ADD PRIMARY KEY (SNO,CNO);

(完整版)初中数学知识点归纳总结(精华版)

第一章有理数考点一、实数的概念及分类(3 分) 1、实数的分类 正有理数 有理数零有限小数和无限循环小数实数负有理数 正无理数 无理数无限不循环小数 负无理数 2、无理数:7, 3 2 π ,+8,sin60o 。 3 第二章整式的加减 考点一、整式的有关概念(3 分) 1、单项式 只含有数字与字母的积的代数式叫做单项式。 注意:单项式是由系数、字母、字母的指数构成的,其中系数不能用带分数表示,如- 4 1 a 2 b ,这3 种表示就是错误的,应写成-13 a 2 b 。一个单项式中,所有字母的指数的和叫做这个单项式的次数。如3 -5a3b 2c 是6 次单项式。 考点二、多项式(11 分) 1、多项式 几个单项式的和叫做多项式。其中每个单项式叫做这个多项式的项。多项式中不含字母的项叫做常数项。多项式中次数最高的项的次数,叫做这个多项式的次数。 2、同类项 所有字母相同,并且相同字母的指数也分别相同的项叫做同类项。几个常数项也是同类项。 第三章一元一次方程 考点一、一元一次方程的概念(6 分) 1、一元一次方程 只含有一个未知数,并且未知数的最高次数是1 的整式方程叫做一元一次方程,其中方程 ax +b =(0 x为未知数,a ≠ 0)叫做一元一次方程的标准形式,a 是未知数x 的系数,b 是常数项。 第四章图形的初步认识 考点一、直线、射线和线段(3 分) 1、点和直线的位置关系有线面两种: ①点在直线上,或者说直线经过这个点。 ②点在直线外,或者说直线不经过这个点。 2、线段的性质 (1)线段公理:所有连接两点的线中,线段最短。也可简单说成:两点之间线段最短。 (2)连接两点的线段的长度,叫做这两点的距离。 (3)线段的中点到两端点的距离相等。

SQL学习总结

SQL学习 2.1 SQL 简介 当面对一个陌生的数据库是,通常需要一种方式与它进行交换,以完成用户所需要的各种工作,这个时候,就要用到SQL语言了,由于SQL 语言的标准化,所以大多数关系型数据库系统都支持SQL语言,它已经发展成多种平台进行交互操作的底层会话语言。 2.2 SQL 使用入门 2.2.1 SQL分类 SQL 语句主要可以划分为以下3个类别 1)、DDL (Data Definition Languages)语句:数据定义语言,这些语句定义了不同的数据段、数据库、表、列、索引等数据库对象的定义。常用的语句关键字主要包括create、drop、alter等。 2)、DML(Data Manipulation Languagr)语句:数据操作语句,用于添加、删除、更新和查询数据库记录,并检查数据完整性。常用的语句关键字主要包括insert、delete、update和select等。 3)、DCL(Data Control Language)语句:数据控制语句,用于控制不同数据段直接的许可和访问级别的语句。这些语句定义了数据库、表、字段、用户的访问权限和安全级别、主要的语句关键字包括grant、revoke等。 2.2.2 DDL 语句 DDL是数据定义语言的缩写,是对数据库内部的对象进行创建(create)、删除(drop)、修改(alter)的操作语言,它和DML语句的最大区别是DML只是对表内部数据的操作,而不涉及表定义,结构的修改,更不会涉及其它的对象,DDL语句更多地被数据库管理员(DBA)所使用,一般开发人员很少使用。 下面通过一些例子来介绍MySQL中常用的DDL语句的使用方法。 1、创建数据库 因为所有的数据都存储在数据库中,因此需要学习的第一个命令是创建数据库,语法如下:

精典的SQL语句

精典的SQL语句ffice ffice" /> 1. 行列转换--普通 假设有张学生成绩表(CJ)如下 Name Subject Result 张三语文80 张三数学90 张三物理85 李四语文85 李四数学92 李四物理82 想变成 姓名语文数学物理 张三80 90 85 李四85 92 82 declare @sql var char(4000) set @sql = 'select Name' select @sql = @sql + ',sum(case Subject when '''+Subject+''' then Res ult end) ['+Subject+']' from (select distinct Subject from CJ) as a select @sql = @sql+' from test group by name' exec(@sql) 2. 行列转换--合并 有表A, id pid 1 1 1 2 1 3 2 1 2 2 3 1 如何化成表B BR>id pid 1 1,2,3 2 1,2 3 1 创建一个合并的函数 create function fmerg(@id int) returns var char(8000) as begin declare @str var char(8000) set @str=''

select @str=@str+','+cast(pid as var char) from 表A where id=@id se t @str=right(@str,len(@str)-1) return(@str) End go --调用自定义函数得到结果 select distinct id,dbo.fmerg(id) from 表A 3. 如何取得一个数据表的所有列名 方法如下:先从SYSTEMOBJECT系统表中取得数据表的SYSTEMID,然后再SYSCOL UMN表中取得该数据表的所有列名。 SQL语句如下: declare @objid int,@objname char(40) set @objname = 'tablename' select @objid = id from sysobjects where id = object_id(@objname) select 'Column_name' = name from syscolumns where id = @objid order b y colid 是不是太简单了?呵呵不过经常用阿. 4. 通过SQL语句来更改用户的密码 修改别人的,需要sysadmin role EXEC sp_password NULL, 'newpassword', 'User' 如果帐号为SA执行EXEC sp_password NULL, 'newpassword', sa 5. 怎么判断出一个表的哪些字段不允许为空? select COLUMN_NAME from INFORMATION_SCHEMA.COLUMNS where IS_NULLABLE= 'NO' and TABLE_NAME=tablename 6. 如何在数据库里找到含有相同字段的表? a. 查已知列名的情况 SELECT https://www.360docs.net/doc/807622698.html, as TableName,https://www.360docs.net/doc/807622698.html, as columnname From syscolumns a INNER JOIN sysobjects b ON a.id=b.id AND b.type='U' AND https://www.360docs.net/doc/807622698.html,='你的字段名字' b. 未知列名查所有在不同表出现过的列名 Select https://www.360docs.net/doc/807622698.html, As tablename,https://www.360docs.net/doc/807622698.html, As columnname From syscolumns s1, sysobjects o Where s1.id = o.id And o.type = 'U' And Exists ( Select 1 From syscolumns s2 Where https://www.360docs.net/doc/807622698.html, = https://www.360docs.net/doc/807622698.html, And s1.id <> s2.id ) 7. 查询第xxx行数据 假设id是主键: select *

数据库_经典SQL语句大全

一、基础 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1. dat' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2… from tab_old definition only 5、说明:删除新表 drop table tabname 6、说明:增加一个列 Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 7、说明:添加主键:Alter table tabname add primary key(col) 说明:删除主键: Alter table tabname drop primary key(col) 8、说明:创建索引:create [unique] index idxname on tabname(col….)删除索引:drop index idxname 注:索引是不可更改的,想更改必须删除重新建。 9、说明:创建视图:create view viewname as select statement 删除视图:drop view viewname 10、说明:几个简单的基本的sql语句 选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围 查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料! 排序:select * from table1 order by field1,field2 [desc] 总数:select count as totalcount from table1 求和:select sum(field1) as sumvalue from table1

物理知识点归纳总结

物理知识点归纳总结 物理知识点归纳总结 1.磁性:物体吸引铁、镍、钴等物质的性质。 2.磁体:具有磁性的物体叫磁体。它有指向性:指南北。 3.磁极:磁体上磁性最强的部分叫磁极。 ①任何磁体都有两个磁极,一个是北极(N极);另一个是南极(S极) ②磁极间的作用:同名磁极互相排斥,异名磁极互相吸引。 4.磁化:使原来没有磁性的物体带上磁性的过程。 5.磁体周围存在着磁场,磁极间的相互作用就是通过磁场发生的。 6.磁场的基本性质:对入其中的磁体产生磁力的作用。 7.磁场的方向:在磁场中的某一点,小磁针静止时北极所指的方向就是该点的磁场方向。 8.磁感线:描述磁场的强弱和方向而假想的曲线。磁体周围的磁感线是从它北极出来,回到南极。(磁感线是不存在的,用虚线表示,且不相交) 9.磁场中某点的磁场方向、磁感线方向、小磁针静止时北极指的方向相同。 10.地磁的北极在地理位置的南极附近;而地磁的南极则在地理位置的北极附近。(地磁的南北极与地理的南北极并不重合,它们的交角称磁偏角,这是我国学者:沈括最早记述这一现象。) 11.奥斯特实验证明:通电导线周围存在磁场。

12.安培定则:用右手握螺线管,让四指弯向螺线管中电流方向,则大拇指所指的那端就是螺线管的北极(N极)。 13.安培定则的易记易用:入线见,手正握;入线不见,手反握。大拇指指的一端是北极(N极)。 14.通电螺线管的性质:①通过电流越大,磁性越强;②线圈匝数越多,磁性越强;③插入软铁芯,磁性大大增强;④通电螺线管 的极性可用电流方向来改变。 15.电磁铁:内部带有铁芯的螺线管就构成电磁铁。 16.电磁铁的特点:①磁性的有无可由电流的通断来控制;②磁性的强弱可由改变电流大小和线圈的匝数来调节;③磁极可由电流 方向来改变。 17.电磁继电器:实质上是一个利用电磁铁来控制的开关。它的作用可实现远距离操作,利用低电压、弱电流来控制高电压、强电流。还可实现自动控制。 18.电磁感应:闭合电路的一部分导体在磁场中做切割磁感线运动时,导体中就产生电流,这种现象叫电磁感应,产生的'电流叫感 应电流。 19.产生感生电流的条件:①电路必须闭合;②只是电路的一部 分导体在磁场中;③这部分导体做切割磁感线运动。 20.感应电流的方向:跟导体运动方向和磁感线方向有关。 21.电磁感应现象中是机械能转化为电能。 22.发电机的原理是根据电磁感应现象制成的。交流发电机主要 由定子和转子。 23.高压输电的原理:保持输出功率不变,提高输电电压,同时 减小电流,从而减小电能的损失。 24.磁场对电流的作用:通电导线在磁场中要受到磁力的作用。 是由电能转化为机械能。应用是制成电动机。

SQL语句--Group By总结

1 SQL语句--Group By总结 1. Group By 语句简介: Group By语句从英文的字面意义上理解就是“根据(by)一定的规则进行分组(Group)”。它的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理。 P.S. 这里真是体会到了一个好的命名的力量,Group By从字面是直接去理解是非常好理解的。恩,以后在命名的环节一定要加把劲:)。话题扯远了。 2. Group By 的使用: 上面已经给出了对Group By语句的理解。基于这个理解和SQL Server 2000的联机帮助,下面对Group By语句的各种典型使用进行依次列举说明。 2.1 Group By [Expressions]: 这个恐怕是Group By语句最常见的用法了,Group By + [分组字段](可以有多个)。在执行了这个操作以后,数据集将根据分组字段的值将一个数据集划分成各个不同的小组。比如有如下数据集,其中水果名称(FruitName)和出产国家(ProductPlace)为联合主键: FruitName ProductPlace Price Apple China $1.1 Apple Japan $2.1 Apple USA $2.5 Orange China $0.8 Banana China

$3.1 Peach USA $3.0 如果我们想知道每个国家有多少种水果,那么我们可以通过如下SQL语句来完成: SELECTCOUNT(*)AS水果种类,ProductPlaceAS出产国 FROMT_TEST_FRUITINFO GROUPBYProductPlace 这个SQL语句就是使用了Group By + 分组字段的方式,那么这句SQL语句就可以解释成“我按照出产国家(ProductPlace)将数据集进行分组,然后分别按照各个组来统计各自的记录数量。”很好理解对吧。这里值得注意的是结果集中有两个返回字段,一个是ProductPlace(出产国), 一个是水果种类。如果我们这里水果种类不是用Count(*),而是类似如下写法的话: SELECTFruitName,ProductPlaceFROMT_TEST_FRUITINFOGROUPBYProductPlace 那么SQL在执行此语句的时候会报如下的类似错误: 选择列表中的列'T_TEST_FRUITINFO.FruitName'无效,因为该列没有包含在聚合函数或GROUPBY子句中。 这就是我们需要注意的一点,如果在返回集字段中,这些字段要么就要包含在Group By语句的后面,作为分组的依据;要么就要被包含在聚合函数中。我们可以将Group By操作想象成如下的一个过程,首先系统根据SELECT 语句得到一个结果集,如最开始的那个水果、出产国家、单价的一个详细表。然后根据分组字段,将具有相同分组字段的记录归并成了一条记录。这个时候剩下的那些不存在于Group By语句后面作为分组依据的字段就有可能出现多个值,但是目前一种分组情况只有一条记录,一个数据格是无法放入多个数值的,所以这里就需要通过一定的处理将这些多值的列转化成单值,然后将其放在对应的数据格中,那么完成这个步骤的就是聚合函数。这就是为什么这些函数叫聚合函数(aggregate functions)了。 2.2 Group By All [expressions] : Group By All + 分组字段, 这个和前面提到的Group By [Expressions]的形式多了一个 关键字ALL。这个关键字只有在使用了where语句的,且where条件筛选掉了一些组的情况才可以看出效果。在SQL Server 2000的联机帮助中,对于Group By All是这样进行描述的:

SQL查询语句大全集锦(超经典)

SQL查询语句大全集锦 MYSQL查询语句大全集锦 一、简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的 表或视图、以及搜索条件等。 例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。 复制内容到剪贴板 代码:SELECT `nickname`,`email`FROM `testtable`WHERE `name`='张三' (一) 选择列表 选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1、选择所有列 例如,下面语句显示testtable表中所有列的数据: 复制内容到剪贴板 代码:SELECT * FROM testtable 2、选择部分列并指定它们的显示次序 查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 例如: 复制内容到剪贴板 代码:SELECT nickname,email FROM testtable 3、更改列标题 在选择列表中,可重新指定列标题。定义格式为: 列标题=列名 列名列标题 如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列 标题:

复制内容到剪贴板 代码:SELECT 昵称=nickname,电子邮件=email FROM testtable 4、删除重复行 SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认 为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 5、限制返回的行数 使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是 表示一百分数,指定返回的行数等于总行数的百分之几。 例如: 复制内容到剪贴板 代码:SELECT TOP 2 * FROM `testtable` 复制内容到剪贴板 代码:SELECT TOP 20 PERCENT * FROM `testtable` (二) FROM子句 FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图, 它们之间用逗号分隔。 在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列 所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定: 复制内容到剪贴板 代码:SELECT `username`,citytable.cityid FROM `usertable`,`citytable` WHERE usertable.cityid=citytable.cityid在FROM子句中可用以下两种格式为表或视图指定别名: 复制内容到剪贴板 代码:表名 as 别名 表名别名例如上面语句可用表的别名格式表示为: 复制内容到剪贴板

最新常用经典SQL语句大全完整版

常用经典SQL语句大全完整版--详解+实例下列语句部分是Mssql语句,不可以在access中使用。 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的device USE master EXEC sp_addumpdevice ’disk’, ’testBack’, ’c:\mssql7backup\MyNwind_1.dat’--- 开始备份 BACKUP DATABASE pubs TO testBack

4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2… from tab_old definition only 5、说明: 删除新表:drop table tabname 6、说明: 增加一个列:Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 7、说明: 添加主键:Alter table tabname add primary key(col) 说明: 删除主键:Alter table tabname drop primary key(col) 8、说明: 创建索引:create [unique] index idxname on tabname(col….) 删除索引:drop index idxname

六年级知识点归纳总结汇总

六年级知识点归纳总结 第一单元分数乘法 1.分数乘整数的意义和整数乘法的意义相同,就是求几个相同加数的和的简便运算。2.分数乘整数的计算法则:分数乘整数,用分数的分子和整数相乘的积作分子,分母不变。 (为了计算简便,能约分的要先约分,然后再乘。) 注意:当带分数进行乘法计算时,要先把带分数化成假分数再进行计算。 3.一个数与分数相乘,可以看作是求这个数的几分之几是多少。 4.分数乘分数的计算法则:分数乘分数,用分子相乘的积作分子,分母相乘的积作分母。 5.整数乘法的交换律、结合律和分配律,对分数乘法同样适用。 乘法交换律: a × b = b × a 乘法结合律: ( a × b )×c = a × ( b × c ) 乘法分配律:( a + b )×c = a c + b c a c + b c = ( a + b )×c 6.乘积是1的两个数互为倒数。 7.求一个数(0除外)的倒数,只要把这个数的分子、分母调换位置。 1的倒数是1。0没有倒数。 真分数的倒数大于1;假分数的倒数小于或等于1;带分数的倒数小于1。 注意:倒数必须是成对的两个数,单独的一个数不能称做倒数。 8.一个数(0除外)乘以一个真分数,所得的积小于它本身。 9.一个数(0除外)乘以一个假分数,所得的积等于或大于它本身。 10.一个数(0除外)乘以一个带分数,所得的积大于它本身。 11.分数应用题一般解题步骤。 (1)找出含有分率的关键句。

(2)找出单位“1”的量(以后称为“标准量”)找单位“1”:在分率句中分率的前面;或“是”、“占”、“比”、“相当于”的后面 (3)画出线段图,标准量与比较量是整体与部分的关系画一条线段即可,标准量与比较量不是整体与部分的关系画两条线段即可。(4)根据线段图写出等量关系式:标准量×对应分率=比较量。求一个数的几倍:一个数×几倍; 求一个数的几分之几是多少:一个数×几 几 。 写数量关系式技巧: (1)“的”相当于“×”“占”、“是”、“比”相当于“ = ” (2)分率前是“的”:单位“1”的量×分率=分率对应量 (3)分率前是“多或少”的意思:单位“1”的量×(1 分率)=分率对应量(5)根据已知条件和问题列式解答。 12.乘法应用题有关注意概念。 (1)乘法应用题的解题思路:已知一个数,求这个数的几分之几是多少?单位“1”×对应分率=对应量 (2)找单位“1”的方法:从含有分数的关键句中找,注意“的”前“是、比、相当于、占、等于”后的规则。 (3)甲比乙多几分之几?计算方法是:(甲-乙)÷乙= 甲÷乙-1甲比乙少几分之几?计算方法是:(甲-乙)÷甲 = 1-乙÷甲 (4)“增加”、“提高”、“增产”等蕴含“多”的意思,“减少”、“下降”、“裁员” 等蕴含“少”的意思,“相当于”、“占”、“是”、“等于”意思相近。 (5)当关键句中的单位“1”不明显时,要把关键句补充完整,补充成“谁是谁的几分之几之几”或“甲比乙多几分之几”、“甲比乙少几分之几”的形式。(6)乘法应用题中,单位“1”是已知的。 (7)单位“1”不同的两个分率不能相加减,加减属相差比,始终遵循“凡是

SQL语句从大到小排序

根据下面三个关系模式完成下面习题:答案已设为白色需要就全选设为黑色学生表student 第一章课件:编写基本的sql语句。 1.查询所有学生情况。 3.查询所有学生的姓名,性别以及年龄。 5.查询所有学生10年后的年龄。 7.查询所有课程(列名用中文显示)。 9.查看竟有那些学生选课(重复学号显示一次)。 11.显示课程表的边结构。第二章课件:约束和排序数据。 01.查询计算机系的所有学生的姓名和年龄。 02.查询体育课的学分。 03.查询年龄小于18的学生。 04.查询年龄大于20的学生。 05.查询年龄介于18和20之间的学生(包括18和20)。 06.查询年龄不在18和20之间的学生。 07.查询年龄为18,20,22的学生。 08.查询年龄不是18,20,22的学生。 09.查询所有姓张的学生。 10.查询所有没有先行课的课程。 11.查询有先行课的课程。 12.在计算机系中找,姓张的男生。 13.在计算机系中找,姓张的或者姓李的男生并且按照年龄从大到小排序。 14.查询所有学生信息,显示结果先按系从大到小排序,再按年龄排序。 第三章课件:多表查询 1.查询每个学生(学号)选了哪门课(课程)得了多少分 2.查询每个学生(姓名)选了哪门课(课程号)得了多少分 3.查询每个学生(姓名)选了哪门课(课程名)得了多少分 4.查询一下王林选可哪门课得了多少分。 5.查询每个学生的成绩类别(优、良还是及格)。 6.查询哪个学生没有选课(用外查询)。 7.查询哪门课没有人选(用外查询)。 第四章课件:组函数

1.查询一下所有课程的平均分,最高分,最低分和总分数。 2.查询一下有多少个学生参加选课。 3.查询一下计算机系有多少人过20岁。 4.统计一下计算机系的男生多少人。 5.查询一下每个学生考试的最高分和最低分。 6.查询每门课(课程号)的最高分和最底分。 7.查询每门课(课程名)的最高分和最底分。 8.查询计算机系中男生多少人,女生多少人。 9,查询人数在三百人以上的系。 10.查询选修人数在三人(包括三人)的课程(课程名)。 11.查询各科考试成绩最低的同学。 12.查询考试成绩小于所选课程平均分的人。(有能力的同学选做) 第五章课件:子查询 1.查询所有比王林大的同学信息。 2.查询和王林同在一个系的所有学生信息。 3.查询一下谁的成绩(所有成绩)最低。 4.查询一下每门课成绩最底的同学(要姓名,和成绩)。 5.查询一下哪个学生没有选课(用子查询)。 6.查询一下哪门课没有人选(用子查询)。 7.查询一下和王林一个系,但是比他年龄大的同学。 第六章课件:ddl语句 1.创建以上四个表,要求每个表必须有主键,表和表之间必须有外间关联。 3.写出insert语句,给表添加以上数据。 5.提交所有操作。 7.将王林的年龄设置为空。 9.将张大民调到计算机系。 11.将体育课的学分设置成和管理学学分一样(update 中带有子查询)。 13.回滚所有操作。 9.某公司印了一批充值卡,卡的密码是随机生成的,现在出现这个问题:卡里面的“o和0”(哦和零)“i和1”(哎和一),用户反映说看不清楚,公司决定,把存储在数据

常用经典SQL语句大全完整版教学文案

常用经典S Q L语句大 全完整版

常用经典SQL语句大全完整版--详解+实例下列语句部分是Mssql语句,不可以在access中使用。 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的 device USE master EXEC sp_addumpdevice ’disk’, ’testBack’, ’c:\mssql7backup\MyNwind_1.dat’--- 开始备份

BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2… from tab_old definition only 5、说明: 删除新表:drop table tabname 6、说明: 增加一个列:Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 7、说明: 添加主键:Alter table tabname add primary key(col) 说明: 删除主键:Alter table tabname drop primary key(col) 8、说明: 创建索引:create [unique] index idxname on tabname(col….)

(完整版)圆的知识点归纳总结大全

圆的知识点归纳总结大全 一、圆的定义。 1、以定点为圆心,定长为半径的点组成的图形。 2、在同一平面内,到一个定点的距离都相等的点组成的图形。 二、圆的各元素。 1、半径:圆上一点与圆心的连线段。 2、直径:连接圆上两点有经过圆心的线段。 3、弦:连接圆上两点线段(直径也是弦)。 4、弧:圆上两点之间的曲线部分。半圆周也是弧。 (1)劣弧:小于半圆周的弧。 (2)优弧:大于半圆周的弧。 5、圆心角:以圆心为顶点,半径为角的边。 6、圆周角:顶点在圆周上,圆周角的两边是弦。 7、弦心距:圆心到弦的垂线段的长。 三、圆的基本性质。 1、圆的对称性。 (1)圆是轴对称图形,它的对称轴是直径所在的直线。 (2)圆是中心对称图形,它的对称中心是圆心。 (3)圆是旋转对称图形。 2、垂径定理。 (1)垂直于弦的直径平分这条弦,且平分这条弦所对的两条弧。 (2)推论: ?平分弦(非直径)的直径,垂直于弦且平分弦所对的两条弧。 ?平分弧的直径,垂直平分弧所对的弦。 3、圆心角的度数等于它所对弧的度数。圆周角的度数等于它所对弧度数的一半。

(1)同弧所对的圆周角相等。 (2)直径所对的圆周角是直角;圆周角为直角,它所对的弦是直径。 4、在同圆或等圆中,两条弦、两条弧、两个圆周角、两个圆心角、两条弦心距 五对量中只要有一对量相等,其余四对量也分别相等。 5、夹在平行线间的两条弧相等。 6、设⊙O 的半径为r ,OP=d 。 7、(1)过两点的圆的圆心一定在两点间连线段的中垂线上。 (2)不在同一直线上的三点确定一个圆,圆心是三边中垂线的交点,它到三 个点的距离相等。 (直角三角形的外心就是斜边的中点。) 8、直线与圆的位置关系。d 表示圆心到直线的距离,r 表示圆的半径。 直线与圆有两个交点,直线与圆相交;直线与圆只有一个交点,直线与圆相切; 直线与圆没有交点,直线与圆相离。 2 9、平面直角坐标系中,A (x 1,y 1)、B (x 2,y 2)。 则AB=221221)()(y y x x -+- 10、圆的切线判定。 (1)d=r 时,直线是圆的切线。 d = r 直线与圆相切。 d < r (r > d 直线与圆相交。 d > r (r d 点P 在⊙O 内 d > r (r

初中数学知识点归纳总结(精华版)

第一章 有理数 考点一、实数的概念及分类 (3分) 1、实数的分类 正有理数 有理数 零 有限小数和无限循环小数 实数 负有理数 正无理数 无理数 无限不循环小数 负无理数 2、无理数:32,7, 3 π +8,sin60o 。 第二章 整式的加减 考点一、整式的有关概念 (3分) 1、单项式 只含有数字与字母的积的代数式叫做单项式。 注意:单项式是由系数、字母、字母的指数构成的,其中系数不能用带分数表示,如b a 2 3 14-,这种表示就是错误的,应写成b a 2 3 13- 。一个单项式中,所有字母的指数的和叫做这个单项式的次数。如c b a 235-是6次单项式。 考点二、多项式 (11分) 1、多项式 几个单项式的和叫做多项式。其中每个单项式叫做这个多项式的项。多项式中不含字母的项叫做常数项。多项式中次数最高的项的次数,叫做这个多项式的次数。 2、同类项 所有字母相同,并且相同字母的指数也分别相同的项叫做同类项。几个常数项也是同类项。 第三章 一元一次方程 考点一、一元一次方程的概念 (6分) 1、一元一次方程 只含有一个未知数,并且未知数的最高次数是1的整式方程叫做一元一次方程,其中方程 )为未知数,(0a x 0≠=+b ax 叫做一元一次方程的标准形式,a 是未知数x 的系数,b 是常数项。 第四章 图形的初步认识 考点一、直线、射线和线段 (3分) 1、点和直线的位置关系有线面两种: ①点在直线上,或者说直线经过这个点。 ②点在直线外,或者说直线不经过这个点。 2、线段的性质 (1)线段公理:所有连接两点的线中,线段最短。也可简单说成:两点之间线段最短。 (2)连接两点的线段的长度,叫做这两点的距离。 (3)线段的中点到两端点的距离相等。

50个经典sql语句总结

一个项目涉及到的50个Sql语句(整理版) --1.学生表 Student(S,Sname,Sage,Ssex) --S 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别--2.课程表 Course(C,Cname,T) --C --课程编号,Cname 课程名称,T 教师编号 --3.教师表 Teacher(T,Tname) --T 教师编号,Tname 教师姓名 --4.成绩表 SC(S,C,score) --S 学生编号,C 课程编号,score 分数 */ --创建测试数据 create table Student(S varchar(10),Sname nvarchar(10),Sage datetime,Ssex nvarchar(10)) insert into Student values('01' , N'赵雷' , '1990-01-01' , N'男') insert into Student values('02' , N'钱电' , '1990-12-21' , N'男') insert into Student values('03' , N'孙风' , '1990-05-20' , N'男') insert into Student values('04' , N'李云' , '1990-08-06' , N'男') insert into Student values('05' , N'周梅' , '1991-12-01' , N'女') insert into Student values('06' , N'吴兰' , '1992-03-01' , N'女') insert into Student values('07' , N'郑竹' , '1989-07-01' , N'女') insert into Student values('08' , N'王菊' , '1990-01-20' , N'女') create table Course(C varchar(10),Cname nvarchar(10),T varchar(10)) insert into Course values('01' , N'语文' , '02') insert into Course values('02' , N'数学' , '01') insert into Course values('03' , N'英语' , '03') create table Teacher(T varchar(10),Tname nvarchar(10)) insert into Teacher values('01' , N'张三') insert into Teacher values('02' , N'李四') insert into Teacher values('03' , N'王五') create table SC(S varchar(10),C varchar(10),score decimal(18,1)) insert into SC values('01' , '01' , 80) insert into SC values('01' , '02' , 90) insert into SC values('01' , '03' , 99) insert into SC values('02' , '01' , 70) insert into SC values('02' , '02' , 60) insert into SC values('02' , '03' , 80) insert into SC values('03' , '01' , 80) insert into SC values('03' , '02' , 80) insert into SC values('03' , '03' , 80) insert into SC values('04' , '01' , 50) insert into SC values('04' , '02' , 30) insert into SC values('04' , '03' , 20) insert into SC values('05' , '01' , 76) insert into SC values('05' , '02' , 87)

数据库经典SQL语句大全

数据库经典SQL语句大全 篇一:经典SQL语句大全 下列语句部分是Mssql语句,不可以在access中使用。 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的 device USE master EXEC sp_addumpdevice 'disk','testBack', 'c:mssql7backupMyNwind_1.dat' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表

create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2? from tab_old definition only 5、说明: 删除新表: tabname 6、说明: 增加一个列:Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 7、说明: 添加主键:Alter table tabname add primary key(col) 说明: 删除主键:Alter table tabname drop primary key(col) 8、说明: 创建索引:create [unique] index idxname on tabname(col?.) 删除索引:drop index idxname 注:索引是不可更改的,想更改必须删除重新建。

相关文档
最新文档