SQL高级教程

1.SQL TOP 子句

在这里插入图片描述

在这里插入图片描述

从上面的 "Persons" 表中选取头两条记录。
SELECT TOP 2 * FROM Persons
SELECT TOP 50 PERCENT * FROM Persons

在这里插入图片描述

2.SQL LIKE 操作符

在这里插入图片描述

在这里插入图片描述

SELECT * FROM Persons WHERE City LIKE 'N%'

在这里插入图片描述

SELECT * FROM Persons WHERE City LIKE '%g'

在这里插入图片描述

3.SQL 通配符

在这里插入图片描述

在这里插入图片描述

使用 % 通配符
从上面的 "Persons" 表中选取居住在以 "Ne" 开始的城市里的人
SELECT * FROM Persons WHERE City LIKE 'Ne%'

在这里插入图片描述

使用 _ 通配符
从上面的 "Persons" 表中选取名字的第一个字符之后是 "eorge" 的人
SELECT * FROM Persons WHERE FirstName LIKE '_eorge'

在这里插入图片描述

使用 [charlist] 通配符
希望从上面的 "Persons" 表中选取居住的城市以 "A""L""N" 开头的人
SELECT * FROM Persons WHERE City LIKE '[ALN]%'

在这里插入图片描述

从上面的 "Persons" 表中选取居住的城市不以 "A""L""N" 开头的人
SELECT * FROM Persons WHERE City LIKE '[!ALN]%'

在这里插入图片描述

4.SQL IN 操作符

在这里插入图片描述

在这里插入图片描述

SELECT * FROM Persons WHERE LastName IN ('Adams','Carter')

在这里插入图片描述

5.SQL BETWEEN 操作符

在这里插入图片描述
在这里插入图片描述

以字母顺序显示介于 "Adams"(包括)和 "Carter"(不包括)之间的人
SELECT * FROM Persons WHERE LastName BETWEEN 'Adams' AND 'Carter'

在这里插入图片描述

使用上面的例子显示范围之外的人,请使用 NOT 操作符
SELECT * FROM Persons WHERE LastName NOT BETWEEN 'Adams' AND 'Carter'

在这里插入图片描述

6.SQL Alias(别名)

在这里插入图片描述

SELECT po.OrderID, p.LastName, p.FirstName FROM Persons AS p, Product_Orders AS po WHERE p.LastName='Adams' AND p.FirstName='John'

在这里插入图片描述

SELECT LastName AS Family, FirstName AS Name FROM Persons

在这里插入图片描述

7.SQL JOIN

在这里插入图片描述
引用两个表
我们可以通过引用两个表的方式,从两个表中获取数据:
谁订购了产品,并且他们订购了什么产品?

SELECT  Persons.LastName,Persons.FirstName,Orders.OrderNoFROM Persons, Orders WHERE Persons.Id_P = Orders.Id_P 

SQL JOIN - 使用 Join
除了上面的方法,我们也可以使用关键词 JOIN 来从两个表中获取数据。
如果我们希望列出所有人的定购,可以使用下面的 SELECT 语句

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

不同的 SQL JOIN
除了我们在上面的例子中使用的 INNER JOIN(内连接),我们还可以使用其他几种连接。
下面列出了您可以使用的 JOIN 类型,以及它们之间的差异。

JOIN: 如果表中有至少一个匹配,则返回行
LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
FULL JOIN: 只要其中一个表中存在匹配,就返回行

8.

9.

10.

11.

12.

13.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值