数据库学习纪要(九):SQL Sever介绍-1

xiaoxiao2021-02-28  78

一、什么是数据库 1、数据库(database)保存有组织的数据的容器(通常是一个文件或一组文件) 注:通常直接使用的是数据库管理系统(DBMS)。 2、表(table)是一种结构化的文件(某种特定类型数据的结构化清单),表名是唯一的,实际上是数据库名和表名等因素的组合。 3、模式(schema)关于数据库和表的布局及特性的信息。 4、列(colomn)表中的一个字段,存储一条特定的信息。每个列都有相应的数据类型(datatype),数据类型定义列可以存储的数据种类。 5、行(row),表中的数据是按行存储的。如果将表想象为网格,网格中垂直的列为表列,水平行为表行。 6、主键(primary key),表中每一行都应该有可以唯一标识自己的一列(或一组列)。要求: 1)任意两行都不具有相同的主键值; 2)每个行都必须具有一个主键值(主键列不允许NULL值); 3)主键列中的值不允许修改或更新; 4)主键值不能重用(如果某行从表中删除,它的主键不能赋给以后的新行)。 7、SQL是结构化查询语言(Structured Query Language)的缩写,是一种专门用来与数据库通信的语言。 二、检索数据 1、SELECT语句 1)检索单个列 SELECT prod_name FROM Products; 2)检索多个列 SELECT prod_id, prod_name, prod_price FROM Products; 3)检索所有列 SELECT * FROM Products; 三、排序检索数据 1、排序数据 SELECT prod_name FROM Products ORDER BY prod_name; 2、按多个列排序 SELECT pord_id, prod_price, prod_name FROM Products ORDER BY prod_price, prod_name; 3、按列位置排序 SELECT prod_id, prod_price, prod_name FROM Products ORDER BY 2, 3; 注:ORDER BY 2, 3表示先按prod_price, 再按prod_name进行排序。 4、指定排序方向 默认为升序排列(从A到Z),指定关键字DESC可以降序排列(从Z到A) SELECT prod_id, prod_price, prod_name FROM Products ORDER BY prod_price DESC; SELECT prod_id, prod_price, prod_name FROM Products ORDER BY prod_price DESC, prod_name; 四、过滤数据 1、使用WHERE子句 SELECT prod_name, prod_price FROM Products WHERE prod_price = 3.49; 注:在同时使用ORDER BY和WHERE子句时,应该让ORDER BY位于WHERE之后,否则将会产生错误。 2、WHERE子句操作符 操作符 说明 = 等于 <> 不等于 != 不等于 < 小于 <= 小于等于 !< 不小于 > 大于 >= 大于等于 !> 不大于 BETWEEN 在指定的两个值之间 IS NULL 为NULL值 注:字符串类型的列进行比较,需要添加'',用来与数值列进行比较的值不用'' 注:NULL空值(no value),与字段包含0、空字符串或仅仅包含空格不同 五、高级数据过滤 1、组合WHERE子句 即:以AND子句的方式或OR子句的方式使用 SELECT prod_price, prod_name FROM Products WHERE vend_id = 'DLL01' OR vend_id = 'BRS01' AND prod_price <= 4; 注:由于AND在计算次序中优先级最高,所以先统计“prod_price <= 4”的数据,再统计“vend_id = 'DLL01' OR vend_id = 'BRS01'” 2、IN操作符 IN操作符用来指定条件范围,范围中的每个条件都可以进行匹配。IN取合法值的由逗号分隔的清单,全都在括在圆括号中。 SELECT prod_name, prod_price FROM Products WHERE vend_id IN ('DLL01', 'BRS01') ORDER BY prod_name; 3、NOT操作符 有且只有一个功能,那就是否定它之后所跟的任何条件。 六、用通配符进行过滤 1、LIKE操作符 百分号(%)通配符,%表示任何字符出现任何次数 SELECT prod_id, prod_name FROM Products WHERE prod_name LIKE 'Fish%'; 注:%告诉DBMS接受Fish之后的任意字符,不管它有多少字符 注:
转载请注明原文地址: https://www.6miu.com/read-55304.html

最新回复(0)