数据库基础语法

基础语法

操作用法

SELECT - 从数据库表中获取数据
UPDATE - 更新数据库表中的数据
DELETE - 从数据库表中删除数据
INSERT INTO - 向数据库表中插入数据

CREATE DATABASE - 创建新数据库
ALTER DATABASE - 修改数据库
CREATE TABLE - 创建新表
ALTER TABLE - 变更(改变)数据库表
DROP TABLE - 删除表
CREATE INDEX - 创建索引(搜索键)
DROP INDEX - 删除索引

SELECT

语法:

SELECT 列名称 FROM 表名称

例子:

SELECT LastName,FirstName FROM Persons

DISTINCT

释义:

关键词 DISTINCT 用于返回唯一不同的值

语法:

SELECT DISTINCT 列名称 FROM 表名称

WHERE

语法:

SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

例子:

SELECT * FROM Persons WHERE City='Beijing'
提示: SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。如果是数值,请不要使用引号。
操作符描述
=等于
<>(!=)不等于
>大于
<小于
>=大于等于
<=小于等于
BETWEEN在某个范围内
LIKE搜索某种模式

AND & OR

释义:

AND 和 OR 可在 WHERE 子语句中把两个或多个条件结合起来。

语法:
例子:

SELECT * FROM Persons WHERE (FirstName='Thomas' OR FirstName='William') AND LastName='Carter'

ORDER BY

释义:

ORDER BY 语句用于根据指定的列对结果集进行排序(默认ASC升序排序)。 如果您希望按照降序对记录进行排序,可以使用 DESC关键字。

语法:
例子:

SELECT Company, OrderNumber FROM Orders ORDER BY Company
SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC, OrderNumber ASC

INSERT

释义:

INSERT INTO 语句用于向表格中插入新的行。

语法:

INSERT INTO 表名称 VALUES (1,2,....)
INSERT INTO table_name (1,2,...) VALUES (1,2,....)

例子:

INSERT INTO Persons VALUES ('Gates', 'Bill', 'Xuanwumen 10', 'Beijing')
INSERT INTO Persons (LastName, Address) VALUES ('Wilson', 'Champs-Elysees')

UPDATE

释义:

Update 语句用于修改表中的数据。

语法:

UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

例子:

UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing' WHERE LastName = 'Wilson'

DELETE

释义:

DELETE 语句用于删除表中的行。

语法:

DELETE FROM 表名称 WHERE 列名称 =

例子:

1. DELETE FROM Person WHERE LastName = 'Wilson'

删除所有行,可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的
2. DELETE FROM table_name 或者 DELETE * FROM table_name

进阶

TOP

释义:

TOP 子句用于规定要返回的记录的数目(对于拥有数千条记录的大型表来说,TOP 子句是非常有用的)。

语法:

SELECT TOP number|percent column_name(s) FROM table_name

例子:

SELECT TOP 2 * FROM Persons
SELECT TOP 50 PERCENT * FROM Persons //(50%)

LIKE

释义:

LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。

语法:

SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern

例子:

SELECT * FROM Persons WHERE City LIKE 'N%'  //"%" 可用于定义通配符(模式中缺少的字母)
SELECT * FROM Persons WHERE City LIKE '%g'  //"%" 通配符在前代表选取以 "g" 为末尾的匹配项
SELECT * FROM Persons WHERE City NOT LIKE '%lon%'  //NOT 不包含

通配符

释义:

  1. 在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。
  2. SQL 通配符必须与 LIKE 运算符一起使用。

语法:
例子:

SELECT * FROM Persons WHERE FirstName LIKE '_eorge'	 //第一个字符后是"eorge"
SELECT * FROM Persons WHERE City LIKE '[ALN]%'	    //选取居住的城市以 "A" 或 "L" 或 "N" 开头的人
SELECT * FROM Persons WHERE City LIKE '[!ALN]%'    //选取居住的城市不以 "A" 或 "L" 或 "N" 开头的人
通配符描述
%代表零个或多个字符
_仅替代一个字符
[charlist]字符列中的任何单一字符
[^charlist]
或者字符列中的任何单一字符
[!charlist]

IN

释义:

IN 操作符允许我们在 WHERE 子句中规定多个值

语法:
例子:

SELECT * FROM Persons WHERE LastName IN ('Adams','Carter')  *//选取姓氏为 Adams 和 Carter 的人*

BETWEEN

释义:

  1. BETWEEN 操作符在 WHERE 子句中使用,作用是选取介于两个值之间的数据范围。
  2. 不同的数据库的取决范围不一样( 有的取决于"[)“,还有的”()“,或者”[]" ) 。
  3. 这些值可以是数值、文本或者日期。

语法:

SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2
SELECT column_name(s) FROM table_name WHERE column_name NOT BETWEEN value1 AND value2

例子:

SELECT * FROM Persons WHERE LastName BETWEEN 'Adams' AND 'Carter'
SELECT * FROM Persons WHERE LastName NOT BETWEEN 'Adams' AND 'Carter'

Alias

释义:

通过使用 SQL,可以为列名称和表名称指定别名(Alias)。

语法:

 1. 表的 SQL Alias 语法
 SELECT column_name(s) FROM table_name AS alias_name
 2. 列的 SQL Alias 语法
 SELECT column_name AS alias_name FROM table_name

例子:

 1. SELECT po.OrderID, p.LastName, p.FirstName FROM Persons AS p, Product_Orders AS po
 2. SELECT LastName AS Family, FirstName AS Name FROM Persons

JOIN

释义:

SQL join 用于根据两个或多个表中的列之间的关系,从这些表中查询数据。

语法:
例子:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
INNER JOIN Orders
ON Persons.Id_P = Orders.Id_P
ORDER BY Persons.LastName

除了我们在上面的例子中使用的 INNER JOIN(内连接),还有其他的 JOIN 类型,以及它们之间的差异:
JOIN: 如果表中有至少一个匹配,则返回行
LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
FULL JOIN: 只要其中一个表中存在匹配,就返回行

释义:
语法:
例子:

常用梳理

Key主键 —— 唯一标识

以时间为例
create table 表名(时间 datetime PRIMARY KEY)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值