视图查询
什么是视图
视图是虚拟的表。与包含真实数据的表不一样,视图只是基于其他表的查询结果集。
创建视图之后,可以用与表基本相同的方式使用它们。可以对视图执行SELECT操作,过滤和排序数据,将视图联结到其他视图或表进行查询。
创建视图
Students表:
| id | class_id | name | gender | score |
| --- | -------- | ---- | ------ | ----- |
| 1 | 1 | 小明 | M | 90 |
| 2 | 1 | 小红 | F | 95 |
| 3 | 1 | 小军 | M | 88 |
| 4 | 1 | 小米 | F | 73 |
| 5 | 2 | 小白 | F | 81 |
| 6 | 2 | 小兵 | M | 55 |
| 7 | 2 | 小林 | M | 85 |
| 8 | 3 | 小新 | F | 91 |
| 9 | 3 | 小王 | M | 89 |
| 10 | 3 | 小丽 | F | 88 |
Classes表:
| id | name |
|----|------|
| 1 | 一班 |
| 2 | 二班 |
| 3 | 三班 |
| 4 | 四班 |
通过CREATE VIEW语句来创建视图:
CREATE VIEW Grade_ranking AS
SELECT
C.name class_name,
S.name,
S.score
FROM
Students S
INNER JOIN Classes C ON S.class_id = C.id
ORDER BY
S.score DESC;
SELECT class_name, name, score FROM Grade_ranking WHERE score > 90;
+------------+-------+-------+
| class_name | name | score |
+------------+-------+-------+
| 一班 | 小红 | 95 |
| 三班 | 小新 | 91 |
+------------+-------+-------+
首先创建了一个名为Grade_ranking的视图,它联结两个表,返回class_name、name、score的列表,然后从视图中检索特定数据。
利用视图,可一次性编写基础的SQL,然后根据需要多次使用。
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦