SQL的简单使用

这篇博客介绍了SQL的基础操作,包括多表查询、SELECT查询中的DISTINCT去重、LIKE模糊匹配、JOIN连接类型如INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL OUTER JOIN,以及UNION合并结果。此外,还讲解了聚合函数如AVG、MAX、MIN、SUM和GROUP BY、HAVING的用法。

多表查询首先涉及到笛卡尔积的计算

SELECT查询

DISTINCT去重

SELECT DISTINCT STUDENT_NO FROM STUDENT_BASIC;

LIKE使用

标识符作用
%通配符,可以匹配一个或多个字符
_只匹配一个字符

例:

SELECT STUDENT_NO FROM STUDENT_BASIC WHERE STUDENT_NO LIKE '100100%';

SELECT STUDENT_NO FROM STUDENT_BASIC WHERE STUDENT_NO LIKE '100_00';

JOIN连接

 

 

有两张表JOINA和JOINB

JOINA:

IDC_A1C_A2
1001a11a12
1002a21a22

JOINB:

IDC_B1C_B2
1001b11b12
1003b21b22

INNER JOIN(A与B的交集)

select * from JOINA a JOIN JOINB b ON a.ID = b.ID
IDC_A1C_A2ID_1C_B1C_B2
1001a11a121001b11b12

LEFT JOIN(以A为基准,匹配B的值,若未匹配到,则为空)

select * from JOINA a LEFT JOIN JOINB b ON a.ID = b.ID
IDC_A1C_A2ID_1C_B1C_B2
1001a11a121001b11b12
1002a21a22

RIGHT JOIN(以B为基准,匹配A的值,若未匹配到,则为空)

select * from JOINA a RIGHT JOIN JOINB b ON a.ID = b.ID
IDC_A1C_A2ID_1C_B1C_B2
1001a11a121001b11b12
1003b21b22

FULL OUTER JOIN(LEFT和RIGHT的并集)

select * from JOINA a FULL OUTER JOIN JOINB b ON a.ID = b.ID
IDC_A1C_A2ID_1C_B1C_B2
1001a11a121001b11b12
1003b21b22
1002a21a22

UNION(将两个sql查询的结果合并起来)

select * from JOINA union select * from JOINB
IDC_A1C_A2
1001a11a12
1002a21a22
1001b11b12
1003b21b22

聚合函数

AVG() 平均数

SELECT AVG(count) AS CountAverage FROM access_log;

MAX() 指定列的最大值

MIN() 指定列的最小值

SUM() 指定列的总数

GROUP BY根据一个或多个列对结果集进行分组

-- 统计学生男女各占多少人
SELECT SEX, COUNT (SEX)
    FROM STUDENT_BASIC
GROUP BY SEX

HAVING (相当于聚合函数的where条件,在使用聚合函数后可以继续分组)

-- 统计学生数大于10等级
  SELECT GRADE, COUNT (GRADE) COUNT
    FROM STUDENT_BASIC
    GROUP BY GRADE
    HAVING COUNT (GRADE) > 10

UCASE() 将字段的值转为大写

LCASE() 将字段的值转为小写

LEN() 获取字段值的长度

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值