mysql实现联合查询视图的方法实例
mysql>
mysql> create table employee(
-> id int,
-> first_name varchar(15),
-> last_name varchar(15),
-> start_date date,
-> end_date date,
-> salary float(8,2),
-> city varchar(10),
-> description varchar(15)
-> );
query ok, 0 rows affected (0.02 sec)
mysql>
mysql> create table job (
-> id int,
-> title varchar(20)
-> );
query ok, 0 rows affected (0.06 sec)
mysql>
mysql> insert into employee(id,first_name, last_name, start_date, end_date, salary, city, description)
-> values (1,'jason', 'martin', '19960725', '20060725', 1234.56, 'toronto', 'programmer');
query ok, 1 row affected (0.00 sec)
mysql>
mysql> insert into employee(id,first_name, last_name, start_date, end_date, salary, city, description)
-> values(2,'alison', 'mathews', '19760321', '19860221', 6661.78, 'vancouver','tester');
query ok, 1 row affected (0.00 sec)
mysql>
mysql> insert into employee(id,first_name, last_name, start_date, end_date, salary, city, description)
-> values(3,'james', 'smith', '19781212', '19900315', 6544.78, 'vancouver','tester');
query ok, 1 row affected (0.00 sec)
mysql>
mysql> insert into employee(id,first_name, last_name, start_date, end_date, salary, city, description)
-> values(4,'celia', 'rice', '19821024', '19990421', 2344.78, 'vancouver','manager');
query ok, 1 row affected (0.00 sec)
mysql>
mysql> insert into employee(id,first_name, last_name, start_date, end_date, salary, city, description)
-> values(5,'robert', 'black', '19840115', '19980808', 2334.78, 'vancouver','tester');
query ok, 1 row affected (0.01 sec)
mysql>
mysql> insert into employee(id,first_name, last_name, start_date, end_date, salary, city, description)
-> values(6,'linda', 'green', '19870730', '19960104', 4322.78,'new york', 'tester');
query ok, 1 row affected (0.00 sec)
mysql>
mysql> insert into employee(id,first_name, last_name, start_date, end_date, salary, city, description)
-> values(7,'david', 'larry', '19901231', '19980212', 7897.78,'new york', 'manager');
query ok, 1 row affected (0.00 sec)
mysql>
mysql> insert into employee(id,first_name, last_name, start_date, end_date, salary, city, description)
-> values(8,'james', 'cat', '19960917', '20020415', 1232.78,'vancouver', 'tester');
query ok, 1 row affected (0.00 sec)
mysql>
mysql> insert into job (id, title) values (1,'tester');
query ok, 1 row affected (0.01 sec)
mysql> insert into job (id, title) values (2,'accountant');
query ok, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (3,'developer');
query ok, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (4,'coder');
query ok, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (5,'director');
query ok, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (6,'mediator');
query ok, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (7,'proffessor');
query ok, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (8,'programmer');
query ok, 1 row affected (0.02 sec)
mysql> insert into job (id, title) values (9,'developer');
query ok, 1 row affected (0.00 sec)
mysql>
mysql> select * from job;//www.3ppt.com
+------+------------+
| id | title |
+------+------------+
| 1 | tester |
| 2 | accountant |
| 3 | developer |
| 4 | coder |
| 5 | director |
| 6 | mediator |
| 7 | proffessor |
| 8 | programmer |
| 9 | developer |
+------+------------+
9 rows in set (0.00 sec)
mysql> select * from employee;
+------+------------+-----------+------------+------------+---------+-----------+-------------+
| id | first_name | last_name | start_date | end_date | salary | city | description |
+------+------------+-----------+------------+------------+---------+-----------+-------------+
| 1 | jason | martin | 1996-07-25 | 2006-07-25 | 1234.56 | toronto | programmer |
| 2 | alison | mathews | 1976-03-21 | 1986-02-21 | 6661.78 | vancouver | tester |
| 3 | james | smith | 1978-12-12 | 1990-03-15 | 6544.78 | vancouver | tester |
| 4 | celia | rice | 1982-10-24 | 1999-04-21 | 2344.78 | vancouver | manager |
| 5 | robert | black | 1984-01-15 | 1998-08-08 | 2334.78 | vancouver | tester |
| 6 | linda | green | 1987-07-30 | 1996-01-04 | 4322.78 | new york | tester |
| 7 | david | larry | 1990-12-31 | 1998-02-12 | 7897.78 | new york | manager |
| 8 | james | cat | 1996-09-17 | 2002-04-15 | 1232.78 | vancouver | tester |
+------+------------+-----------+------------+------------+---------+-----------+-------------+
8 rows in set (0.00 sec)
mysql>
mysql>
mysql> create algorithm = temptable view myview
-> (id, first_name, title) as
-> select o.id, o.first_name, c.title
-> from job c, employee o
-> where o.id = c.id;
query ok, 0 rows affected (0.00 sec)
mysql>
mysql> select * from myview;
+------+------------+------------+
| id | first_name | title |
+------+------------+------------+
| 1 | jason | tester |
| 2 | alison | accountant |
| 3 | james | developer |
| 4 | celia | coder |
| 5 | robert | director |
| 6 | linda | mediator |
| 7 | david | proffessor |
| 8 | james | programmer |
+------+------------+------------+
8 rows in set (0.00 sec)
mysql>
mysql> drop view myview;
query ok, 0 rows affected (0.00 sec)
mysql>
mysql>
mysql>
mysql>
mysql> drop table job;
query ok, 0 rows affected (0.02 sec)
mysql> drop table employee;
query ok, 0 rows affected (0.00 sec)
mysql>
分享到:
相关推荐
通过`mysql.createConnection()`方法创建连接实例,并配置相应的数据库设置。然后执行SQL查询,使用`LIMIT`子句限制查询结果的数量,使用`OFFSET`子句跳过前`num*(current_page-1)`条数据,实现分页功能。 在回调...
mysql索引与视图实例附答案宣贯 在本篇文章中,我们将探讨 MySQL 中的索引和视图这两个重要概念,并通过实例和答案来宣贯相关知识点。 索引概念: 索引是一种数据结构,它可以提高查询的速度。索引可以创建在表上...
从而明白在MySQL中怎么写与视图相关的查询语句才能有好的效果? 什么是等价谓词重写?MySQL中怎么写WHERE子句有利于提高查询效率? 预计时间1小时 第6课 查询优化技术理论与MySQL实践(四)------条件化简 什么是...
MySQL 索引与视图的实例附答案 MySQL 索引是创建在表上的,是对数据库表中一列或多列的值进行排序的一种结构。索引可以提高查询的速度。索引的优点是可以提高检索数据的速度,这是创建索引的最主要的原因。索引的...
《MySQL使用实例book》是一本全面讲解MySQL数据库应用与开发的书籍,旨在帮助读者逐步掌握MySQL的实际操作技巧。通过对本书的学习,你可以深入了解MySQL在实际工作中的应用,提升数据库管理、查询优化以及数据存储的...
本文将详细介绍 MySQL 数据库中的视图的使用,包括可更新视图的条件、通过视图对基本表进行数据插入、修改和删除的方法。 一、可更新视图 在 MySQL 中,视图可以是可更新的,也可以是不可更新的。可更新视图可以...
4. **复杂查询**:复杂的查询需求可以通过创建多个视图,然后通过联合查询来实现。 ### 四、视图的执行方式 MySQL处理视图有两种机制:替换式和具化式。 - **替换式**:视图的定义直接替换到查询中,形成新的SQL...
MySQL中的视图是一种虚拟表,它不存储实际的数据,而是基于一个或多个表的查询结果。在MySQL 5.x版本之后,视图的功能更加完善,符合SQL:2003标准。视图的主要目的是简化复杂的查询,提供数据的抽象层,以及保护...
此外,如果数据库是Oracle或MySQL,查询语句会有所不同,因为它们的信息架构视图可能不相同。 提供的压缩包文件名如"Case06_7.sln"、"Case06_7.suo"和"Case06_7"可能是C#项目的解决方案文件、用户选项文件和项目...
MySQL 索引与视图实例详解 MySQL 索引的概念 索引是创建在表上的,是对数据库表中一列或多列的值进行排序的一种结构。索引可以提高查询的速度。索引的优点是可以提高检索数据的速度,这是创建索引的最主要的原因...
视图是虚拟表,它根据查询结果动态生成,提供了一种简化复杂查询和保护数据隐私的方法。你可以创建视图,然后像操作普通表一样对视图进行查询和更新。 触发器是预定义的数据库对象,当特定的数据库操作发生时自动...
通过Java的JDBC(Java Database Connectivity)接口,可以实现与MySQL数据库的连接,执行SQL查询和事务处理,从而完成数据的增删改查操作。 **博客功能** 1. **博客发布**:用户可以撰写博客,编辑内容、添加图片...
例如,一个新闻查询界面可能包含一个文本框供用户输入关键词,一个按钮触发查询操作,以及一个表格视图展示查询结果。JavaFX的Controller类负责连接界面元素和业务逻辑,当用户触发事件(如点击查询按钮)时,...
本文实例讲述了mysql视图之创建可更新视图的方法。分享给大家供大家参考,具体如下: 我们知道,在mysql中,视图不仅是可查询的,而且是可更新的。这意味着我们可以使用insert或update语句通过可更新视图插入或更新...
【标题】:“jsp+javaBean+Mysql实现...总之,“jsp+javaBean+Mysql实现BBS系统”是一个典型的Web应用开发实例,涉及到了前后端交互、业务处理和数据管理等多个层面的技术,对于学习和掌握Web开发有着重要的实践价值。
本资料包中的" MySql高级.txt "文件很可能包含了这些高级查询的实例和解释。 1. **联接操作**:联接操作允许我们从多个表中检索数据,例如INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN。它们各自在不同的场景下有...
MySQL中的视图是一种虚拟表,它不存储实际的数据,而是基于一个或多个表的查询结果。视图在数据库管理系统中扮演着重要的角色,因为它能够提供数据的抽象化,简化复杂的查询,以及保护数据的安全性。在本文中,我们...
总的来说,这个项目是一个基础的Struts2与MySQL结合的实例,可以帮助学习者理解Web应用程序的开发流程,掌握Struts2框架的核心概念,以及如何使用MySQL存储和管理数据。同时,也能练习到JSP、Servlet、JDBC等相关...
SSM+Echarts+Mysql是开发Web应用时常用的技术栈,用于实现动态数据可视化。SSM代表Spring、Spring MVC和MyBatis三个框架的组合,它们在Java Web开发中扮演着核心角色。Echarts则是一个基于JavaScript的数据可视化库...