MySQL入门学习(五)

mysql

MySQL入门学习(五)
--多表操作

  前面我们熟悉了数据库和数据库表的基本操作,现在我们再来看看如何操作多个表。

  在一个数据库中,可能存在多个表,这些表都是相互关联的。我们继续使用前面的例子。前面建立的表中包含了员工的一些基本信息,如姓名、性别、出生日期、出生地。我们再创建一个表,该表用于描述员工所发表的文章,内容包括作者姓名、文章标题、发表日期。

1、查看第一个表mytable的内容:
mysql> select * from mytable;
+----------+------+------------+-----------+
| name   | sex | birth   | birthaddr |
+----------+------+------------+-----------+
| abccs  |f   | 1977-07-07 | china   |
| mary   |f   | 1978-12-12 | usa    |
| tom   |m   | 1970-09-02 | usa    |
+----------+------+------------+-----------+

2、创建第二个表title(包括作者、文章标题、发表日期):
mysql> create table title(writer varchar(20) not null,
  -> title varchar(40) not null,
  -> senddate date);

  向该表中填加记录,最后表的内容如下:
mysql> select * from title;
+--------+-------+------------+
| writer | title | senddate  |
+--------+-------+------------+
| abccs | a1  | 2000-01-23 |
| mary  | b1  | 1998-03-21 |
| abccs | a2  | 2000-12-04 |
| tom  | c1  | 1992-05-16 |
| tom  | c2  | 1999-12-12 |
+--------+-------+------------+
5 rows in set (0.00sec)

3、多表查询
  现在我们有了两个表: mytable 和 title。利用这两个表我们可以进行组合查询:
例如我们要查询作者abccs的姓名、性别、文章:
mysql> SELECT name,sex,title FROM mytable,title
  -> WHERE name=writer AND name='abccs';
+-------+------+-------+
| name | sex | title |
+-------+------+-------+
| abccs | f  | a1  |
| abccs | f  | a2  |
+-------+------+-------+

  上面例子中,由于作者姓名、性别、文章记录在两个不同表内,因此必须使用组合来进行查询。必须要指定一个表中的记录如何与其它表中的记录进行匹配。
  注意:如果第二个表title中的writer列也取名为name(与mytable表中的name列相同)而不是writer时,就必须用mytable.name和title.name表示,以示区别。

  再举一个例子,用于查询文章a2的作者、出生地和出生日期:
mysql> select title,writer,birthaddr,birth from mytable,title
  -> where mytable.name=title.writer and title='a2';
+-------+--------+-----------+------------+
| title | writer | birthaddr | birth   |
+-------+--------+-----------+------------+
| a2  | abccs | china   | 1977-07-07 |
+-------+--------+-----------+------------+

时间: 2024-10-29 19:20:13

MySQL入门学习(五)的相关文章

MySQL入门学习(一)

mysql MySQL入门学习(一)  安装篇   PHP+MySQL+Linux目前已逐渐成为小型web服务器的一种经典组合.在indows环境下构筑和调试MySQL数据库是许多网站开发者的一种首选.本人在Windows98环境下初学MySQL,现将学习过程与经验总结出来供大家参考. 1.下载mysql-3.23.35-win.zip并解压: 2.运行setup.exe;选择d:\mysql,"tyical install" 3.启动mysql,有如下方法:   方法一:使用winm

MySQL入门学习(六)

mysql MySQL入门学习(六) --修改和备份.批处理   有时我们要对数据库表和数据库进行修改和删除,可以用如下方法实现: 1.增加一列: 如在前面例子中的mytable表中增加一列表示是否单身single: mysql> alter table mytable add column single char(1); 2.修改记录 将abccs的single记录修改为"y": mysql> update mytable set single='y' where nam

MySQL入门学习(四)

mysql MySQL入门学习(四) --学习篇   上篇我们学会了如何创建一个数据库和数据库表,并知道如何向数据库表中添加记录.   那么我们如何从数据库表中检索数据呢? 1.从数据库表中检索信息 实际上,前面我们已经用到了SELECT语句,它用来从数据库表中检索信息. select语句格式一般为: SELECT 检索关键词 FROM 被检索的表 WHERE 检索条件(可选) 以前所使用的" * "表示选择所有的列. 下面继续使用我们在上篇文章中创建的表mytable: 2.查询所有

MySQL入门学习(三)

mysql MySQL入门学习(三) --学习篇   了解了一些最基本的操作命令后,我们再来学习如何创建一个数据库和数据库表. 1.使用SHOW语句找出在服务器上当前存在什么数据库: mysql> SHOW DATABASES; +----------+ | Database | +----------+ | mysql  | | test   | +----------+ 3 rows in set (0.00 sec) 2.创建一个数据库abccs mysql> CREATE DATABA

MySQL入门学习(二)

mysql 入门篇   上篇讲了如何安装并测试MySQL,环境建好后就可以继续我们的学习了.本篇主要熟悉一写常用命令. 1.启动MySQL服务器   实际上上篇已讲到如何启动MySQL.两种方法:   一是用winmysqladmin,如果机器启动时已自动运行,则可直接进入下一步操作.   二是在DOS方式下运行    d:mysqlbinmysqld 2.进入mysql交互操作界面   在DOS方式下,运行:   d:mysqlbinmysql    出现:   mysql    的提示符,此

ALinq 入门学习(八)--ALinq 对Vs2010 的支持

1.       ALinq FOR  VS2010 简介 之前写过一些关于ALinq 的相关文章,详细请参考如下:     ALinq入门学习(一)--ALinq简介     ALinq入门学习(二)--DataContext     ALinq入门学习(三)--Where条件查询     ALinq入门学习(四)--查询关键字     ALinq入门学习(五)--插入数据     ALinq入门学习(五)--删除修改数据     ALinq入门学习(六)--Join连接查询     ALin

MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

[正文] 首先需要回顾一下上一篇文章中的内容:MySQL数据库学习笔记(八)----JDBC入门及简单增删改数据库的操作 一.ResultSet接口的介绍: 对数据库的查询操作,一般需要返回查询结果,在程序中,JDBC为我们提供了ResultSet接口来专门处理查询结果集. Statement通过以下方法执行一个查询操作: ResultSet executeQuery(String sql) throws SQLException  单词Query就是查询的意思.函数的返回类型是ResultSe

21分钟 MySQL 入门教程_Mysql

21分钟 MySQL 入门教程 目录 一.MySQL的相关概念介绍 二.Windows下MySQL的配置 配置步骤 MySQL服务的启动.停止与卸载 三.MySQL脚本的基本组成 四.MySQL中的数据类型 五.使用MySQL数据库 登录到MySQL 创建一个数据库 选择所要操作的数据库 创建数据库表 六.操作MySQL数据库 向表中插入数据 查询表中的数据 更新表中的数据 删除表中的数据 七.创建后的修改 添加列 修改列 删除列 重命名表 删除整张表 删除整个数据库 八.附录 修改 root

MySQL入门指南

mysql MySQL入门指南推荐:圆梦   发表日期:2000年10月10日   阅读次数:2039 Miles Tsai(net-bull@126.com)  songzy@mailcity.com 2000.2  一.SQL速成  结构查询语言(SQL)是用于查询关系数据库的标准语言,它包括若干关键字和一致的语法,便于数据库元件(如表.索引.字段等)的建立和操纵.  以下是一些重要的SQL快速参考,有关SQL的语法和在标准SQL上增加的特性,请查询MySQL手册.    1.创建表  表是