知识点、SQL语句学习及详细总结文档格式.docx
- 文档编号:14165991
- 上传时间:2022-10-19
- 格式:DOCX
- 页数:27
- 大小:137.18KB
知识点、SQL语句学习及详细总结文档格式.docx
《知识点、SQL语句学习及详细总结文档格式.docx》由会员分享,可在线阅读,更多相关《知识点、SQL语句学习及详细总结文档格式.docx(27页珍藏版)》请在冰豆网上搜索。
扩展名为.ldf,用于存放恢复数据库的所有日志信息。
2.3数据的存储分配
(1)数据文件和日志文件的默认存放位置为:
\ProgrameFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\Data文件夹。
(2)数据的存储分配单位是数据页。
一页表是一块8KB的连续磁盘空间。
(3)页是存储数据的最小空间分配单位,页的大小决定了数据库表中一行数据的最大大小。
3.SQL语句数据库操作
(1)创建数据库
CREATEDATABASEdatabase_name
二.SQL基础
SQL(StructuredQueryLanguage,结构化查询语言)是用户操作关系数据库的通用语言。
1.SQL功能概述
2.系统提供的数据类型
2.1数值数据类型
数据类型
说明
存储空间
bit
bit数据类型是整型,其值只能是0、1或空值。
这种数据类型用于存储只有两种可能值的数据,如Yes或No、True或False、On或Off.
(很省空间的一种数据类型,如果能够满足需求应该尽量多用。
)
1字节
tinyint
tinyint数据类型能存储从0到255之间的整数。
它在你只打算存储有限数目的数值时很有用。
smallint
smallint数据类型可以存储从-2的15次幂(-32768)到2的15次幂(32767)之间的整数。
这种数据类型对存储一些常限定在特定范围内的数值型数据非常有用。
(如果tinyint类型太单调不能满足您的需求,您可以考虑用smallint类型,因为这个类型相对也是比较安全的,不接受恶意脚本内容的嵌入。
2字节
int
int数据类型可以存储从-2的31次幂(-2147483648)到2的31次幂(2147483647)之间的整数。
存储到数据库的几乎所有数值型的数据都可以用这种数据类型
4个字节
numeric(p,s)或decimal(p,s)
数据类型能用来存储从-10的38次幂-1到10的38次幂-1的固定精度和范围的数值型数据。
使用这种数据类型时,必须指定范围和精度。
范围是小数点左右所能存储的数字的总位数。
精度是小数点右边存储的数字的位数
最多17个字节
2.2普通编码字符串类型
char(n)
char数据类型用来存储指定长度的定长非统一编码型的数据,n表示字符串的最大长度,取值范围为1~8000(若实际字符串控件小于n,系统自动在后面补空格)
n字节_______
varchar(n)
可变长度的字符串类型,n表示字符串的最大长度,取值范围为1~8000。
字符数+2字节额外开销
text
text数据类型用来存储大量的非统一编码型字符数据。
这种数据类型最多可以有231-1或20亿个字符.
每个字符一个字节
char和varchar的区别:
若某列数据类型为varchar(20),存字符串”Jone”时,只占用4个字节,而char(20)会在为填满的空间中填写空格。
所以,
varchar类型比char类型更节省空间,但它的开销会大一些,处理速度也慢一些。
因此,n值比较小(小于4),用char类型更好些。
2.3统一编码字符串类型(Unicode)
nchar(n)
nchar数据类型用来存储定长统一编码字符型数据。
统一编码用双字节结构来存储每个字符,而不是用单字节(普通文本中的情况)。
它允许大量的扩展字符。
此数据类型能存储4000种字符,使用的字节空间上增加了一倍.
2n字节_______
nvarchar(n)
nvarchar数据类型用作变长的统一编码字符型数据。
此数据类型能存储4000种字符,使用的字节空间增加了一倍.
ntext
最多可存储2的30次方-1将近10亿个字符
每个字符两个字节
三.SQL数据操作语言
1.数据查询语句
1.1查询语句的基本结构
SELECT<
目标列名序列>
--需要哪些列
From<
表名>
--来自哪张表
[WHERE<
行选择条件>
]
[GROUPBY<
分组依据列>
[HAVING<
组>
[ORDERBY<
排序依据列>
SELECT子句用于指定输出的字段;
FROM子句用于指定数据的来源;
WHERE子句用于指定数据的选择条件;
GROUPBY子句用于对检索到的记录进行分组;
HAVING子句用于指定组的选择条件;
ORDERBY子句用于对查询的结果进行排序;
以上子句中,SELECT子句和FROM子句是必需的,其它是可选的。
1.2单表查询
1.2.1选择表中若干列
(1)查询指定的列
SELECT列名FROM表名
·
1
例子:
SELECTSname,SnoFROMStudent
(2)查询全部列
SELECT*FROM表名
SELECT*FROMStudent
(3)查询经过计算的列
SELECTSname,year(getdata())-year(Birthdate)FROMStudent
1.2.2选择表中的若干元祖
(1)消除取值相同的行:
DISTINCT
SELECTDISTINCTSnoFROM表名
SELECTDISTINCTSnoFROMStudent
(2)查询满足条件的元祖
查询条件
谓词
比较
=、>
、>
=、<
、<
>
、!
=、!
<
确定范围
BETWEEN…AND、NOTBETWEEN…AND
确定集合
IN、NOTIN
字符匹配
LIKE、NOTLIKE
空值
ISNULL、ISNOTNULL
多重条件(逻辑谓词)
AND、OR
a.比较大小
SELECTSnameFROMStudentWHEREyear(getdata())-year(Birthdate)<
20
b.确定范围
BETWEEN…AND和NOTBETWEEN…AND可用于查找属性值在或不在指定范围。
列名|表达式|[NOT]BETWEEN下限值AND上限值
BETWEEN…AND
代表的范围是在上限值和下限值之间(包括边界值),即为true。
NOTBETWEEN…AND
代表的范围是不在上限值和下限值之间(不包括边界值),即为true。
(若判断值为边界值时,为false)
SELECTSno,CnoFROMSCWHEREGradeBETWEEN80AND90
此查询等价于:
SELECTSno,CnoFROMSCWHEREGrade>
=80ANDGrade<
=90
SELECTSno,CnoFROMSCWHEREGradeNOTBETWEEN80AND90
SELECTSno,CnoFROMSCWHEREGrade<
80ORGrade>
90
c.确定集合
IN运算符的含义:
当列中的值和集合中的某个常量值相等时,结果为True。
NOTIN运算符的含义:
当列中的值和集合中的全部常量值都不相等时,结果为True。
SELECTSnoFROMStudentWHEREDeptIN('
信息管理系'
'
计算机系'
)
SELECTSnoFROMStudentWHEREDept='
ORDept='
SELECTSnoFROMStudentWHEREDeptNOTIN('
SELECTSnoFROMStudentWHEREDept!
='
ANDDept!
d.字符串匹配
Like运算符用于查找指定列中与匹配串匹配的元祖。
列名[NOT]LIKE<
匹配串>
通配符
含义
_(下划线)
匹配任意一个字符
%(百分号)
匹配0个或多个字符
[]
匹配[]中的任意一个字符。
如[abcd]表示匹配abcd其中任何一个,若是连续的,可以用-表示,如[a-d]
[^]
不匹配[]中的任意一个字符。
如[^abcd]表示不匹配abcd其中任何一个,若是连续的,可以用-表示,如[^a-d]
(查询姓“张”的学生详细信息)
SELECT*FROMStudentWHERESnameLIKE'
张%'
(查询不姓“张”的学生详细信息)
SELECT*FROMStudentWHERESnameNOTLIKE'
(查询姓“张”、“李”的学生详细信息)
[张李]%'
(查询名字的第二个字为“小”或“大”的学生详细信息)
_[小大]%'
e.涉及空值的查询
空值(NULL)在数据库中有特殊含义,表示当前不确定或未知的值。
判断是否为NULL时,不可用普通的比较运算符,需用ISNULL
SELECTSnoFROMStudentWHEREGradeISNULL
1.2.3对查询结果进行排序
将查询结果按照指定的顺序显示。
ASC表示按列值升序排列(从上往下,值从大到小)。
DESC表示按列值降序排列(从上往下,值从小到大)。
默认为ASC。
ORDERBY<
列名>
[ASC|DESC]
SELECTSno,GradeFROMSCORDERBYGradeDESC
1.2.4使用聚合函数统计数据
聚合函数也称为统计函数或集合函数,作用是对一组值进行计算并返回一个统计结果。
聚合函数
COUNT(*)
统计表中元祖的个数
COUNT([DISTINCT]<
统计本列的非空列值个数
SUM(<
计算列值的和值(必须是数值型列)
AVG(<
计算列值的平均值(必须是数值型列)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 知识点 SQL 语句 学习 详细 总结