SQL:
结构化查询语言(Structured Query Language),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
参考:
http://www.w3school.com.cn/sql/index.asphttp://www.w3school.com.cn/sql/index.asp
语法:
1.提取数据 SELECT(①SQL 语句对大小写不敏感;②星号(*)是选取所有列的快捷方式。)
SELECT 列名称 FROM 表名称 或者 SELECT * FROM 表名称
2.返回唯一不同的值 DISTINCT (去重)
SELECT DISTINCT 列名称 FROM 表名称
3.修改表中的数据 UPDATE
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
4.删除表中的行 DELETE
DELETE FROM 表名称 WHERE 列名称 = 值
5.插入新的行 INSERT INTO
INSERT INTO 表名称 VALUES (值1, 值2,....)
6.排序 ORDER BY
用于根据指定的列对结果集进行排序;默认按照升序对记录进行排序;若按照降序对记录进行排序,可以使用 DESC 关键字,升序 ASC。
7.条件选择 WHERE(如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句)
SELECT 列名称 FROM 表名称 WHERE 列 运算符 值
8.用于基于一个或多个条件对记录进行过滤 AND OR
AND 和 OR 可在 WHERE 子语句中把两个或多个条件结合起来;如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录;如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。
9.返回规定的数据数目 TOP
SQL Server 语法(TOP):
SELECT TOP number|percent column_name(s)FROM table_name
MySQL 语法(LIMIT):
SELECT column_name(s)FROM table_name LIMIT number
10.用于在 WHERE 子句中搜索列中的指定模式 LIKE
①从 "Persons" 表中选取 "FirstName" 列的值以 "a" 开头的所有记录:
SELECT * FROM Persons WHERE FirstName LIKE 'a%'
②从 "Persons" 表中选取 "FirstName" 列的值以 "a" 结尾的所有记录:
SELECT * FROM Persons WHERE FirstName LIKE '%a'
③从 "Persons" 表中选取 "FirstName" 列的值包含 "a"的所有记录:
SELECT * FROM Persons WHERE FirstName LIKE '%a%‘
11.为列名称或者表名称重命名 ALIAS
表的SQL Alias 语法:
SELECT column_name(s) FROM table_name AS alias_name
列的SQL Alias语法:
SELECT column_name AS alias_name FROM table_name
测验:
以下为W3school 最后附带的一个小测验:
1.SQL 指的是?
您的回答:Structured Query Language
2.哪个 SQL 语句用于从数据库中提取数据?
您的回答:SELECT
3.哪条 SQL 语句用于更新数据库中的数据?
您的回答:UPDATE
4.哪条 SQL 语句用于删除数据库中的数据?
您的回答:DELETE
5.哪条 SQL 语句用于在数据库中插入新的数据?
您的回答:INSERT INTO
6.通过 SQL,您如何从 "Persons" 表中选取 "FirstName" 列?
您的回答:SELECT FirstName FROM Persons
7.通过 SQL,您如何从 "Persons" 表中选取所有的列?
您的回答:SELECT * FROM Persons
8.通过 SQL,您如何从 "Persons" 表中选取 "FirstName" 列的值等于"Peter" 的所有记录?
您的回答:SELECT * FROM Persons WHERE FirstName='Peter'
9.通过 SQL,您如何从 "Persons" 表中选取 "FirstName" 列的值以 "a" 开头的所有记录?
您的回答:SELECT * FROM Persons WHERE FirstName LIKE 'a%'
10.请判断下列说法是否正确:当所列出的某个条件为 true 时,OR 运算符会显示记录。当列出的所有条件为 true 时,AND 运算符会显示记录。
您的回答:正确
11.通过 SQL,您如何在表 Persons 中选择 FirstName 等于 Thomas 而 LastName 等于 Carter 的所有记录?
您的回答:SELECT * FROM Persons WHERE FirstName='Thomas' AND LastName='Carter'
12.通过 SQL,您如何按字母顺序选取 Persons 表中 LastName 介于 Adams 和 Carter 的所有记录?
您的回答:SELECT * FROM Persons WHERE LastName BETWEEN 'Adams' AND 'Carter'
13.哪条 SQL 语句可返回唯一不同的值?
您的回答:SELECT DISTINCT
14.哪个 SQL 关键词用于对结果集进行排序?
您的回答:ORDER BY
15.通过 SQL,您如何根据 "FirstName" 列降序地从 "Persons" 表返回所有记录?
您的回答:SELECT * FROM Persons ORDER BY FirstName DESC
16.通过 SQL,您如何向 "Persons" 表插入新的记录?
您的回答:INSERT INTO Persons VALUES ('Jimmy', 'Jackson')
17.通过 SQL,您如何向 "Persons" 表中的 "LastName" 列插入 "Wilson" ?
您的回答:INSERT INTO Persons (LastName) VALUES ('Wilson')
18.您如何把 "Persons" 表中 "LastName" 列的 "Gates" 改为 "Wilson" ?
您的回答:UPDATE Persons SET LastName='Wilson' WHERE LastName='Gates'
19.通过 SQL,您如何在 "Persons" 表中删除 "FirstName" 等于 "Fred" 的纪录?
您的回答:DELETE FROM Persons WHERE FirstName = 'Fred'
20.通过 SQL,您如何返回 "Persons" 表中记录的数目?
您的回答:SELECT COUNT(*) FROM Persons