MySQL 如何创建一个以某些条件为基础从表中获取值的MySQL视图?
如果我们想要创建一个视图以依据某些特定的条件从表中获取值,那么就必须在创建视图时使用WHERE子句。与WHERE子句有关的值将被存储在视图中。创建带有WHERE子句的MySQL视图的语法可以如下所示 –
阅读更多:MySQL 教程
语法
Create View view_name AS Select_statements FROM table WHERE condition(s);
示例
为了举例说明上述概念,我们使用来自‘Student_info’表的下列数据 –
mysql> Select * from student_info;
+------+---------+------------+------------+
| id | Name | Address | Subject |
+------+---------+------------+------------+
| 101 | YashPal | Amritsar | History |
| 105 | Gaurav | Chandigarh | Literature |
| 125 | Raman | Shimla | Computers |
| 130 | Ram | Jhansi | Computers |
+------+---------+------------+------------+
4 rows in set (0.08 sec)
现在,借助以下查询的帮助,我们将创建名为 ‘Info’ 的视图,它仅存储具有计算机学科的行。因此,我们需要在创建视图时使用WHERE子句,如下所示 –
mysql> Create or replace VIEW Info AS Select Id, Name, Address, Subject from student_info WHERE Subject = 'Computers';
Query OK, 0 rows affected (0.46 sec)
mysql> Select * from info;
+------+-------+---------+-----------+
| Id | Name | Address | Subject |
+------+-------+---------+-----------+
| 125 | Raman | Shimla | Computers |
| 130 | Ram | Jhansi | Computers |
+------+-------+---------+-----------+
2 rows in set (0.00 sec)