SQL语句教程(免费下载)
SQL语言学习ppt课件
精选版课件ppt
23
3、找出不在北京的全部供应商信息。
SELECT * FROM 供应商 WHERE 地址!=“北京”
SELECT * FROM供应商WHERE NOT (地址=“北 京”)
NOT的应用范围很广,比如,可以有NOT IN、NOT BETWEEN等。若提出和例1相反的请求,找出工资不 在1220元和1240元之间的全部职工信息,可以用命令:
13
2、找出工作在面积大于400的仓库的职工号以及这些职工工作所在 的城市。 SELECT 职工号,城市 FROM 仓库,职工表; WHERE (面积>400)AND (职工表.仓库号=仓库.仓库号)
精选版课件ppt
14
嵌套查询
SELECT嵌套查询是一种子查询,子查询的特征是能够将一 个查询的结果作为另一个查询的一部分,子查询是对查询结果的 查询。在SQL中,有些查询不用子查询无法表达。子查询要加括 号,并且与SELECT语句的形式类似,也有FROM子句,以及可 选择的WHERE、GROUP BY和HAVING子句等。子查询中的 子句与SELECT语句中的子句格式相同,用于子查询时,它们执 行正常的功能,但是子查询和SELECT语句还是有如下区别:
30
注:以上结果的运算包含了没有职工的wh4
仓库。若要排除没有职工的仓库,就改为:
SELECT AVG(工资) FROM 职工表 WHERE 仓库号 NOT IN; (SELECT 仓库号 FROM 职工表 WHERE 工资 <=1210); AND仓库号 IN (SELECT 仓库号 FROM 职工表)
精选版课件ppt
sql语句教程
sql语句教程SQL(Structured Query Language)是一种用于管理关系数据库系统的编程语言,可以执行查询、插入、更新和删除数据等功能。
它是数据操作语言(DML)的一部分,可以用于从数据库中获取和操作数据。
SQL是一种标准化的语言,在各种关系数据库系统中具有相同的语法和功能,因此非常适合用于跨平台的数据操作。
SQL的语法非常简洁和直观,使得开发人员可以轻松地创建和操作数据库。
下面是SQL的主要语句及其功能:1. SELECT:用于从数据库中检索数据。
可以指定要检索的列,可以使用WHERE子句过滤数据,并可以使用ORDER BY对结果进行排序。
2. INSERT INTO:用于向数据库表中插入新的记录。
3. UPDATE:用于更新数据库表中的现有记录。
可以使用WHERE子句根据特定条件更新数据。
4. DELETE FROM:用于从数据库表中删除记录。
也可以使用WHERE子句根据条件删除数据。
5. CREATE DATABASE:用于创建新的数据库。
6. CREATE TABLE:用于创建新的数据表。
可以指定表的列、数据类型和约束。
7. ALTER TABLE:用于修改现有表的结构。
可以添加、修改或删除表的列。
8. DROP DATABASE:用于删除数据库。
9. DROP TABLE:用于删除数据表。
以上是SQL的基本语句,但还有其他一些语句和关键字,可以用来操作和管理数据库系统,例如:- DISTINCT:用于从结果集中删除重复的记录。
- JOIN:用于连接两个或多个表,并根据共同的列将它们组合起来。
- UNION:用于合并两个或多个SELECT语句的结果集。
- GROUP BY:用于将结果集按一个或多个列进行分组。
- HAVING:用于在使用GROUP BY子句后对结果集进行过滤。
- ORDER BY:用于对结果集进行排序。
- LIMIT:用于限制返回的记录数量。
SQL语句的执行顺序是从上到下,所以必须按照正确的顺序编写SQL语句,确保它们按预期执行。
【培训课件】sql查询语句基础
社交平台
在社交平台中,SQL查询语句被用于检索用户信息、好友关系等,同时也会用 于生成个人资料和社交行为分析。
THANK YOU.
SELECT查询语句的优化和性能提升
避免全表扫描
减少磁盘I/O操作
利用索引优化查询,避免对全表进行扫描, 提高查询效率。
通过合理组织数据和索引,减少磁盘I/O操 作次数,提高查询速度。
优化排序操作
减少网络传输
利用索引和内存缓存等技术,优化排序操作 ,减少排序时间和空间占用。
通过只返回需要的列和行,减少网络传输量 ,提高查询性能。
2023
【培训课件】sql查询语句 基础
contents
目录
• SQL查询语句概述 • SELECT查询语句 • 条件查询和过滤 • 聚合函数和分组查询 • 连接查询和子查询 • SQL查询语句实践和应用案例
ቤተ መጻሕፍቲ ባይዱ1
SQL查询语句概述
什么是SQL查询语句
• SQL查询语句是一种用于从数据库中检索和操作数据的语言。它允许用户以特定的方式从数据库中获取需要的数据,例 如获取特定条件下的数据、对数据进行排序、过滤数据等。
VS
复杂条件查询
可以使用逻辑运算符(AND、OR、NOT )组合多个条件,例如`SELECT * FROM Users WHERE Country = 'China' AND Age > 18`返回中国籍年龄大于18岁的用 户数据。
使用其他条件运算符进行复杂条件查询
使用IN运算符
IN运算符用于指定多个值,例如`SELECT * FROM Users WHERE Country IN ('China', 'USA', 'UK')`返回中国、美国和英国的用户数据。
SQL(精简版)ppt课件
概要与大纲
SELECT语句的使用 表达式、条件语句与运算 SQL的子句 表的联合 子查询、内嵌SQL
2023年11月27日
2
SELECT语句的使用
数据报的形成--SELECT 和FROM SELECT <列名> FROM <表名> Select表示需要取什么 From表示从哪里取
2023年11月27日
17
SQL的子句--group by & order by
SELECT <列名> FROM <表名> WHERE <过滤条件> GROUP BY <需要分组的列> ORDER BY <需要排序的列>
2023年11月27日
18
SQL的子句--group by & order by
SELECT PAYEE, SUM(AMOUNT) FROM CHECKS GROUP BY PAYEE(正确)
SELECT PAYEE, AMOUNT FROM CHECKS GROUP BY PAYEE(错误)
为什么第一个是正确的,第二个是错误的
2023年11月27日
23
SQL的子句--group by 示例
5
SELECT语句的使用--示例
显示所有行 select amount from checks
显示不重复的行 select DISTINCT amount from checks
2023年11月27日
6
表达式、条件语句与运算
SELECT <列名> FROM <表名> WHERE <过滤条件> Select表示需要取什么 From表示从哪里取 Where表示需要满足哪些条件
【培训课件】sql查询语句基础
MAX函数和MIN函数
总结词
最大值和最小值,找出指定列的最大值和最小值
详细描述
MAX函数和MIN函数分别用于找出指定列中的最大值和最小值。例如,`SELECT MAX(age) FROM table_name;`将返回表中最年长的年龄,`SELECT MIN(age) FROM table_name;`将返回表中最年轻 的年龄。
WHERE子句的使用
WHERE子句用于过滤满足指定条件的 数据行。
使用WHERE子句时,需要在SELECT查询 语句后面添加WHERE关键字,然后是条件 表达式。
常见的条件表达式有:等于(=)、不 等于(!=或<>)、比较大小(>、<、 >=、<=)、LIKE模糊匹配等。
ORDER BY子句的使用
03
JOIN操作
内连接(INNER JOIN)
总结词
内连接返回两个表中满足连接条件的所有记录。
详细描述
内连接使用INNER JOIN关键字,它根据两个表之间的共同列进行连接,只返回两个表中满足连接条件的记录 。内连接要求两个表中的连接列必须具有相同的数据类型和值。
左连接(LEFT JOIN)
总结词
【培训课件】sql查询语句 基础
xx年xx月xx日
目录
• SQL查询语句概述 • SELECT查询 • JOIN操作 • 聚合函数的使用 • GROUP BY子句的使用 • WHERE子句和JOIN操作的综合应用
01
SQL查询语句概述
什么是SQL查询语句
SQL(Structured Query Language)是一种用于管理关系型数 据库的标准化语言,用于进行数据操作、定义和管理。
SQL语句大全.pdf
SQL 语句教程SQL语句教程(01) SELECT (2)SQL语句教程(02) DISTINCT (2)SQL语句教程(03) WHERE (2)SQL语句教程(04) AND OR (3)SQL语句教程(05) IN (3)SQL语句教程(06) BETWEEN (4)SQL语句教程(07) LIKE (4)SQL语句教程(08) ORDER BY (5)SQL语句教程(09) 函数 (5)SQL语句教程(10) COUNT (6)SQL语句教程(11) Group By (6)SQL语句教程(12) HAVING (7)SQL语句教程(13) ALIAS (7)SQL语句教程(14) 连接 (8)SQL语句教程(15) 外部连接 (9)SQL语句教程(16) Subquery (9)SQL语句教程(17) UNION (10)SQL语句教程(18) UNION ALL (11)SQL语句教程(19) INTERSECT (11)SQL语句教程(20) MINUS (12)SQL语句教程(21) Concatenate (12)SQL语句教程(22) Substring (13)SQL语句教程(23) TRIM (14)SQL语句教程(24) Create Table (14)SQL语句教程(25) Create View (15)SQL语句教程(26) Create Index (16)SQL语句教程(27) Alter Table (16)SQL语句教程(28) 主键 (18)SQL语句教程(29) 外来键 (18)SQL语句教程(30) Drop Table (19)SQL语句教程(31) Truncate Table (20)SQL语句教程(32) Insert Into (20)SQL语句教程(33) Update (20)SQL语句教程(34) Delete (21)SQL语句教程(01) SELECT是用来做什么的呢?一个最常用的方式是将资料从数据库中的表格内选出。
【培训课件】sql查询语句基础
使用AND和OR运算符将多个条件表 达式嵌套使用,可以表达更复杂的查 询条件。
在嵌套使用中需要注意优先级和括号 的使用,以避免逻辑错误。
可以使用NOT运算符对单个条件表达 式取反,也可以在括号中使用NOT来 改变整个条件表达式的逻辑。
04
GROUP BY子句
GROUP BY子句的基本用法
总结词
分组,聚合
询所有客户以及对应的订单信息(如果有的话)。 • SELECT 订单.订单号, 客户.姓名, 订单.商品, 订单.数量 • FROM 订单 • RIGHT JOIN 客户 ON 订单.客户号 = 客户.客户号; • FULL JOIN示例:假设有两个表,一个是“订单”表,另一个是“客户”表,通过客户号关联两个表。查询
SELECT 列名/表达式 FROM 表名 GROUP BY 列名;
SELECT 列名/表达式 FROM (SELECT 列名/表 达式 FROM 表名 WHERE 条件) AS 别名 ;
02
SELECT查询
基本SELECT查询
SELECT语句用于从数据库表 中检索数据。
基本语法:SELECT column1, column2 FROM
【培训课件】sql查询语句基 础
xxSELECT查询 • WHERE子句 • GROUP BY子句 • HAVING子句 • ORDER BY子句 • JOIN操作 • SQL查询语句的数据源操作
01
SQL查询语句概述
什么是SQL查询语句
SQL查询语句是一种用于从数据库中获取所需数据的编程语 言,它允许用户以结构化查询语言的形式对数据库进行操作 。
GROUP BY子句与聚合函数的结合使用
• 总结词:聚合函数与分组的结合 • 详细描述:GROUP BY子句可以与各种聚合函数结合使用,如COUNT、SUM、AVG、MAX和MIN等。这
ORACLE-SQL语句学习教程
目录概述 (2)第一章SQL*PLUS 工具软件的使用 (5)第二章基本查询 (9)第三章条件查询 (13)第四章单行函数 (16)第五章多表查询 (20)第六章组函数 (23)第七章子查询 (25)第八章运行期间指定变量 (29)第九章创建基表 (31)第十章ORACLE数据字典 (36)第十一章操纵数据 (38)第十二章修改基表及其约束 (42)第十三章创建序列 (45)第十四章创建视图 (47)第十五章创建索引 (50)概述20世纪70年代初,E.F.Codd 在计算机学会(Association of Computer Machinery, 简写为ACM)期刊Communications of the ACM(ACM 通讯)发表了题为”A Relational Model of Data for Large Shared Data Banks”(大型共享数据库的数据关系模型)的论文,该论文提出的关系数据库模型成为今天最为权威的关系型数据库管理模型。
IBM公司首先使用该模型开发出了结构化英语查询语言SEQUEL(Structured English Query Language),作为其关系数据库原型System R的操作语言,实现对关系数据库的信息检索。
SEQUEL后来简写为SQL,即Structured Query Language(结构化查询语言)的缩写。
ORACLE公司于1997年推出了第一个商业应用的SQL软件。
20世纪80年代初,美国国家标准化组织(ANSI)开始着手制订SQL标准,最早的ANSI标准于1986年颁布,它也被称为SQL-86。
标准的出台使SQL作为标准的关系数据库语言的地位得到加强。
SQL标准几经修改和完善,目前SQL语言方面新的ANSI标准是1992年制定的ANSI X3.135-1992,“Database Language SQL”。
此标准也被国际电工委员会(International Electro technical Commission, 即IEC)所属的国际标准化组织(International Standards Organization, 即ISO)所接受,并将它命名为ISO/IEC9075:1992, “Database Language SQL”。
SQL语句基础教程
SQL语句基础教程SQL(Structured Query Language)是一种用于管理和操作关系数据库的编程语言。
它是一种标准化的语言,被广泛应用于数据库管理系统(DBMS)中。
1.数据库操作:- 创建数据库:CREATE DATABASE database_name;- 删除数据库:DROP DATABASE database_name;- 选择/切换数据库:USE database_name;2.表操作:- 创建表:CREATE TABLE table_name (column1 data_type, column2 data_type, ...);- 删除表:DROP TABLE table_name;- 修改表:ALTER TABLE table_name ADD column_name data_type;ALTER TABLE table_name DROP column_name;3.数据操作:- 查询数据:SELECT column1, column2, ... FROM table_name;- 插入数据:INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);- 更新数据:UPDATE table_name SET column1 = value1, column2 = value2 WHERE condition;- 删除数据:DELETE FROM table_name WHERE condition;4.条件查询:- 使用WHERE子句指定条件:SELECT column1, column2, ... FROM table_name WHERE condition;-支持的条件运算符:=,<>,<,>,<=,>=,LIKE,IN,BETWEEN,ISNULL,AND,OR,NOT等。
培训课件sql查询语句基础
LIKE '张%'; 利用通配符”%”和”_”来查找学生表中姓名的第二 个字为“雪”的学生的所有列信息。 – SELECT * FROM 学生 – WHERE 姓名 LIKE '_明%‘
update 选课 set 成绩=null where 学号='s3' and 课程 号='c1'
SELECT 学号,课程号
FROM 选课 WHERE 成绩 IS NULL;
Where 子句——模式匹配符 Like
模式匹配符[NOT] LIKE 常用于模糊查询,它判断列值是 否与指定的字符串格式匹配。在SQL Server中可使用 的匹配符有以下几种:
字段比较符anyall子查询操作符语意any大于子查询结果中的某个值即表示大于查询结果中最小值all大于子查询结果中的所有值即表示大于查询结果中最大值any小于子查询结果中的某个值即表示小于查询结果中最大值all小于子查询结果中的所有值即表示小于查询结果中最小值any大于等于子查询结果中的某个值即表示大于等于结果集中最小值all大于等于子查询结果中的所有值即表示大于等于结果集中最大值any小于等于子查询结果中的某个值即表示小于等于结果集中最大值all小于等于子查询结果中的所有值即表示小于等于结果集中最小值any等于子查询结果中的某个值即相当于inall等于子查询结果中的所有值通常没有实际意义或any不等于子查询结果中的某个值或all不等于子查询结果中的任何一个值即相当于notsqlserver2000网络数据库教程例子例522求其他系中比计算机系某一学生年龄小的学生
SQL教程
SQL基础教程目录1 SQL基础 (1)1.1 SQL简介 (1)1.2 SQL语法 (2)1.3 SQL SELECT 语句 (3)1.4 SQL SELECT DISTINCT 语句 (5)1.5 SQL WHERE 子句 (6)1.6 SQL AND & OR 运算符 (8)1.7 SQL INSERT INTO 语句 (9)1.8 SQL DELETE 语句 (11)2 SQL高级 (12)2.1 SQL CREATE DATABASE 语句 (12)2.2 SQL CREATE TABLE 语句 (12)2.3 SQL 约束(Constraints) (14)2.4 SQL NOT NULL 约束 (14)2.5 SQL UNIQUE 约束 (15)2.6 SQL PRIMARY KEY 约束 (17)2.7 SQL FOREIGN KEY 约束 (19)2.8 SQL ALTER TABLE 语句 (21)2.9 SQL 数据类型 (23)1SQL基础SQL 是用于访问和处理数据库的标准的计算机语言。
在本教程中,您将学到如何使用SQL 访问和处理数据系统中的数据,这类数据库包括:Oracle, Sybase, SQL Server, DB2, Access 等等。
1.1 SQL简介SQL 是用于访问和处理数据库的标准的计算机语言。
什么是SQL?●SQL 指结构化查询语言●SQL 使我们有能力访问数据库●SQL 是一种ANSI 的标准计算机语言编者注:ANSI,美国国家标准化组织SQL 能做什么?●SQL 面向数据库执行查询●SQL 可从数据库取回数据●SQL 可在数据库中插入新的纪录●SQL 可更新数据库中的数据●SQL 可从数据库删除记录●SQL 可创建新数据库●SQL 可在数据库中创建新表●SQL 可在数据库中创建存储过程●SQL 可在数据库中创建视图●SQL 可以设置表、存储过程和视图的权限SQL 是一种标准- 但是...SQL 是一门ANSI 的标准计算机语言,用来访问和操作数据库系统。
SQL语句PPT
2 、更新记录 命令: UPDATE <表名>
SET <字段名> = <表达式> [, <字段名> = < 表达式>]…[ WHERE<条件> ]
功能:对表中的一行或多行记录的某些字段 值进行修改
例1: UPDATE 课程; SET 课时=48; WHERE 课程号= "c170"
练习:把教师表中工资小于或等于2000元的教 师的工资提高20%
第33次理论:三题4(3)
7、修改查询去向 INTO与TO子句: 指定查询结果的输出去向,
默认查询结果显示在浏览窗口中. INTO子句中的<目标>有3种选项: DBF | TABLE <表名>:结果到表文件 CURSOR <临时表名> ARRAY <数组> TO子句有3种选项: FILE <文件名>:结果放到文本文件中
SELE * FROM 学生 ORDER BY 入校总分
(2)多列排序 例2:从选课表中查询成绩大于80分的学号、课 程号和成绩,查询结果按学号升序排列,学号相 同的按成绩降序排序
SELECT * FROM 选课 WHERE 成绩>80 ORDER BY 学号,成绩 DESC
(3)查询前面部分记录 TOP <n>[ PERCENT ]:指定查询结果包括特定 数目的行数(或包括全部行数的百分比)
第四模块 结构化查询语言SQL
2.SQL的数据更新功能(INSERT-SQL、 DELETE-SQL、UPDATE-SQL)
1、插入记录
命令: INSERT INTO <表名> ( [<字段名1> [, <字段名2,… > ] )
数据库基础培训SQL语言培训
3) select id, name from student where (id >23456 or name like ‘张%’) and mark>60
不要考虑条件匹配的先天优先级,在你想优先匹配的地方加上 括号,永远是对的
asc可以省略,因为默认是按照升序排列但是desc不可以 如: select id, name from student order by id (升序)
精选ppt课件员工培训讲义
8
Group by (用于汇总计算)
GROUP 中文意思: 分组
select id, name,sum(mark) from student group by id, name (上句按照id,name 为分组,计算mark的汇总值)
数据库基础: SQL语法(1)
章节
查询数据的SQL语句 修改数据的SQL语句 管理数据定义的SQL语句
精选ppt课件员工培训讲义
2
查询数据的SQL语句
SELECT 语句
精选ppt课件员工培训讲义
3
查询数据的SQL语句--SELECT
本章讲述如何使用SELECT语句的五个子句。 在SELECT语句中,你必须按以下顺序使用这些子句 :
精选ppt课件员工培训讲义
7
Order by 子句 (用于排序)
单列排序 Select id, name from student order by id asc (升序) Select id, name from student order by id desc (降序)
多列排序
select id, name ,mark from student order by mark desc , id asc (先按照成绩降序,如果成绩相同,则按照编号升序)
sql语句教程双语ppt
2. History of SQL
In 1987, ANSI & ISO published an initial SQL standard. In 1989, ISO published an addendum(补遗) that defined an ‘Integrity Enhancement Feature’. In 1992, first major revision(修改) to ISO standard occurred, referred to as SQL2 or SQL/92. In 1999, SQL3 was released with support for objectoriented data management.
用于其他纵准甚至影其他纵准的纵纵例如isosinformationresourcedirectorysystemirdsstandard信息纵源字典系纵纵准remotedataaccessrdastandard51introductionsql51introductionsqlstandarddoesuseformaltermsrelationsattributestuplesinsteadusingtablescolumnsrows不用纵coursemostlyusesisoterminologysqldoesadherestrictlyrelationalmodeldescribedexample
Chapter 5 SQL: Data Manipulation (SQL: 数据操纵) 5.1 Introduction to SQL 5.2 Writing SQL Commands 5.3 Data Manipulation
5.2 Writing SQL Commands
SQL语句培训教材
SQL语句培训教材一、SQL概述1、SQL初识SQL(Structured Query Language,结构化查询语言)是一种查询、插入、更新和删除数据,生成、修改和删除数据库对象,提供数据库安全控制,完整性及数据保护控制,是面向数据库的通用数据处理语言规范。
数据库对象包括表、视图、索引、同义词、族、触发器、函数、过程、包、数据库链和快照等。
2、SQL数据库的体系统结构(1)SQL数据库是表的汇集;(2)SQL表由行集构成,行是列的序列,每列对应一个数据项;(3)表或者是基本表,或者是视图;(4)一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。
存储文件与物理文件对应。
(5)用户可以用SQL语句对表进行操作,包括视图和基本表。
(6)SQL的用户可以是应用程序,也可以是终端用户。
3、SQL的组成SQL由4部份组成:(1)数据定义:SQL DDL。
定义SQL模式、基本表、视图和索引。
(2)数据操纵:SQL DML。
包括数据查询和数据更新(增、删、改)。
(3)数据操制:包括对基本表和视图的授权、完整性规则的描述和事务控制等。
(4)嵌入式SQL的使用规定二、数据库查询1、SQL语句符号:操作符用途例子+ - 表示正数或负数,正数可省去+-1234.56+ 将两个数或表达式进行相加A=c+b- 将两个数或表达式进行相减34-12* 将两个数或表达式进行相乘12*34/ 除以一个数或表达式18*11NULL 空值判断Where name is null;|| 字符串连接‘101-’||tel_num = 等于测试Select * from empwhere name=’王五’;!= 或<>或^=不等于测试Select * from empwhere name !=’王五’;< 小于测试Select * from empWhere sal < 5000; > 大于测试Select * from empWhere sal > 5000; <= 小于等于测试Select * from empWhere sal <= 5000; >= 大于等于测试Select * from empWhere sal >= 5000; Not in 测试某值是否在一个指定的结果集中Select name,addrfrom expertwhere local notin(‘北京’,’上海’);ANY 将一个值与一组值进行比较,返回满足条件的结果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DISTINCT
SELECT 指令让我们能够读取表格中一个或数个栏位的所有资料。这将把所有的资料都抓 出,无论资料值有无重复。在资料处理中,我们会经常碰到需要找出表格内的不同资料值的 情况。换句话说,我们需要知道这个表格/栏位内有哪些不同的值,而每个值出现的次数并 不重要。这要如何达成呢?在 SQL 中,这是很容易做到的。我们只要在 SELECT 后加上 一个 DISTINCT 就可以了。DISTINCT 的语法如下:
举例来说,我们若要在 Store_Information 表格中选出所有 Sales 高于 $1,000 或是 Sales 在 $500 及 $275 之间的资料的话,
Store_Information 表格 store_name Los Angeles San Diego San Francisco Boston 我们就键入,
♦ SQL 指令: SQL 如何被用来储存、读取、以及处理数据库之中的资料。
♦ 表格处理: SQL 如何被用来处理数据库中的表格。
♦ 进阶 SQL: 介绍 SQL 进阶概念,以及如何用 SQL 来执行一些较复杂的运算。
♦ SQL 语法: 这一页列出所有在这个教材中被提到的 SQL 语法。
对于每一个指令,我们将会先列出及解释这个指令的语法,然后用一个例子来让读者了解这 个指令是如何被运用的。当您读完了这个网站的所有教材后,您将对 SQL 的语法会有一个 大致上的了解。另外,您将能够正确地运用 SQL 来由数据库中获取信息。笔者本身的经验 是,虽然要对 SQL 有很透彻的了解并不是一朝一夕可以完成的,可是要对 SQL 有个基本 的了解并不难。希望在看完这个网站后,您也会有同样的想法。
复杂条件的语法如下:
SELECT "栏位名" FROM "表格名" WHERE "简单条件" {[AND|OR] "简单条件"}+
{}+ 代表{}之内的情况会发生一或多次。在这里的意思就是 AND 加简单条件及 OR 加简 单条件的情况可以发生一或多次。另外,我们可以用 () 来代表条件的先后次序。
请读者注意:在不同的数据库中,日期的储存法可能会有所不同。在这里我们选择了其中一 种储存法。
结果: store_name San Diego San Francisco Boston
Sales $250 $300 $700
Date Jan-07-1999 Jan-08-1999 Jan-08-1999
若我们要由以下的表格抓出营业额超过 $1,000 的资料,
Store_Information 表格 store_name Los Angeles San Diego Los Angeles Boston
Sales $1500 $250 $300 $700
Date Jan-05-1999 Jan-07-1999 Jan-08-1999 Jan-08-1999
SELECT DISTINCT "栏位名" FROM "表格名"
举例来说,若要在以下的表格,Store_Information,找出所有不同的店名时,
Store_Information 表格 store_name Los Angeles San Diego Los Angeles Boston 我们就键入,
非常简单明了的SQL语句教程,看了这篇文本,非常利于大家对数据库的学习。
SQL 指令 SELECT DISTINCT WHERE AND OR IN BETWEEN LIKE ORDER BY 函数 COUNT GROUP BY HAVING ALIAS 表格链接 外部链接 CONCATENATE SUBSTRING TRIM
结果:
store_name Los Angeles San Francisco
IN
在 SQL 中,在两个情况下会用到 IN 这个指令;这一页将介绍其中之一:与 WHERE 有 关的那一个情况。在这个用法下,我们事先已知道至少一个我们需要的值,而我们将这些知 道的值都放入 IN 这个子句。 IN 指令的语法为下:
LIKE
LIKE 是另一个在 WHERE 子句中会用到的指令。基本上, LIKE 能让我们依据一个模式 (pattern) 来找出我们要的资料。相对来说,在运用 IN 的时候,我们完全地知道我们需要的 条件;在运用 BETWEEN 的时候,我们则是列出一个范围。 LIKE 的语法如下:
SELECT "栏位名" FROM "表格名" WHERE "栏位名" LIKE {模式}
Sales $1500 $250 $300 $700
Date Jan-05-1999 Jan-07-1999 Jan-08-1999 Jan-08-1999
SELECT * FROM Store_Information WHERE Date BETWEEN 'Jan-06-1999' AND 'Jan-10-1999'
{模式} 经常包括野卡 (wildcard). 以下是几个例子:
'A_Z': 所有以 'A' 起头,另一个任何值的字原,且以 'Z' 为结尾的字符串。 'ABZ' 和 'A2Z'
都符合这一个模式,而 'AKKZ' 并不符合 (因为在 A 和 Z 之间有两个字原,而不是一个 字原)。
'ABC%': 所有以 'ABC' 起头的字符串。举例来说,'ABCD' 和 'ABCABC' 都符合这个模式。
SELECT * FROM Store_Information WHERE store_name LIKE '%AN%'
进阶 SQL UNION UNION ALL INTERSECT MINUS 子查询 EXISTS CASE 算排名
算中位数 算总合百分比 算累积总合百分比 SQL 语法 无论您是一位 SQL 的新手,或是一位只是需要对 SQL 复习一下的资料仓储业界老将,您 就来对地方了。这个 SQL 教材网站列出常用的 SQL 指令,包含以下 store_name FROM Store_Information WHERE Sales > 1000
结果:
store_name Los Angeles
AND OR
在上一页中,我们看到 WHERE 指令可以被用来由表格中有条件地选取资料。 这个条件 可能是简单的 (像上一页的例子),也可能是复杂的。复杂条件是由二或多个简单条件透过 AND 或是 OR 的连接而成。一个 SQL 语句中可以有无限多个简单条件的存在。
表格处理 CREATE TABLE CONSTRAINT NOT NULL UNIQUE CHECK 主键 外来键 CREATE VIEW CREATE INDEX ALTER TABLE DROP TABLE TRUNCATE TABLE INSERT INTO UPDATE DELETE FROM
SELECT "栏位名" FROM "表格名" WHERE "栏位名" IN ('值一', '值二', ...)
在括号内可以有一或多个值,而不同值之间由逗点分开。值可以是数目或是文字。若在括号 内只有一个值,那这个子句就等于
WHERE "栏位名" = '值一'
举例来说,若我们要在 Store_Information 表格中找出所有含盖 Los Angeles 或 San Diego 的资料,
SQL 指令
SELECT
是用来做什么的呢?一个最常用的方式是将资料从数据库中的表格内选出。从这一句回答 中,我们马上可以看到两个关键字: 从 (FROM) 数据库中的表格内选出 (SELECT)。(表 格是一个数据库内的结构,它的目的是储存资料。在表格处理这一部分中,我们会提到如何 使用 SQL 来设定表格。) 我们由这里可以看到最基本的 SQL 架构:
BETWEEN
IN 这个指令可以让我们依照一或数个不连续 (discrete) 的值的限制之内抓出资料库中的 值,而 BETWEEN 则是让我们可以运用一个范围 (range) 内抓出资料库中的值。BETWEEN 这个子句的语法如下:
SELECT "栏位名" FROM "表格名"
WHERE "栏位名" BETWEEN '值一' AND '值二'
若要选出所有的店名 (store_Name),我们就打入:
SELECT store_name FROM Store_Information
结果: store_name Los Angeles San Diego Los Angeles Boston
我们一次可以读取好几个栏位,也可以同时由好几个表格中选资料。
WHERE
我们并不一定每一次都要将表格内的资料都完全抓出。在许多时候,我们会需要选择性地抓 资料。就我们的例子来说,我们可能只要抓出营业额超过 $1,000 的资料。要做到这一点, 我们就需要用到 WHERE 这个指令。这个指令的语法如下:
SELECT "栏位名" FROM "表格名" WHERE "条件"
Sales $1500 $250 $300 $700
Date Jan-05-1999 Jan-07-1999 Jan-08-1999 Jan-08-1999
SELECT store_name FROM Store_Information WHERE Sales > 1000 OR (Sales < 500 AND Sales > 275)