MySQL数据库实操教程(16)——多表连接查询

本文详细介绍了MySQL的交叉连接、内连接、左连接、右连接等多表连接查询方法,通过实例解析了不同连接类型的特点和使用场景,并提供了多对多查询的两种解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


版权声明


在本节教程中,我们来一起学习多表连接查询。

交叉连接

交叉连接返回的结果是被连接的两个表中所有数据行的笛卡儿积;比如:集合A={a,b},集合B={0,1,2},则集合A和B的笛卡尔积为{(a,0),(a,1),(a,2),(b,0),(b,1),(b,2)}。所以,交叉连接也被称为笛卡尔连接,其语法格式如下:

SELECT * FROM1 CROSS JOIN2;
<
### 关于 MySQL 数据库教程 #### 创建数据库结构 为了创建一个新的数据库并定义其内部格,可以使用如下 SQL 命令: ```sql CREATE DATABASE example_db; USE example_db; CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50), password CHAR(64), -- Assuming hashed passwords with SHA-256 or similar algorithm. email VARCHAR(100) ); ``` 上述代码片段展示了如何建立名为 `example_db` 的新数据库以及其中包含用户信息的一张 `users`[^1]。 #### 插入数据到中 向已存在的里添加记录可以通过 INSERT INTO 语句完成。下面的例子说明了怎样往之前创建的 `users` 内加入一条新的用户资料: ```sql INSERT INTO users (username, password, email) VALUES ('john_doe', 'hashed_password_here', 'johnd@example.com'); ``` 这条命令会把指定的信息插入到相应的字段位置上。 #### 查询数据 通过 SELECT 语句可以从数据库中的特定检索所需的数据。这里有一个简单的例子来获取所有用户的用户名及其电子邮件地址: ```sql SELECT username, email FROM users; ``` 此查询将返回由两列组成的列——即每个用户的名称和他的联系邮箱。 #### 更新现有条目 如果需要修改已经存在于内的某项数据,则可利用 UPDATE 语句来进行更新工作。比如要更改某个用户的密码,可以用这样的方式现: ```sql UPDATE users SET password='new_hashed_password' WHERE id=1; ``` 这将会找到 ID 号码等于 1 的那一位用户并将他的密码更改为所提供的哈希值形式的新密码。 #### 删除记录 当不再希望保留某些数据时,DELETE FROM 语句允许删除符合条件的一个或条记录。假设想要移除全部测试账户(假定它们都带有 "test_" 开头的名字),那么应该执行下列指令: ```sql DELETE FROM users WHERE username LIKE 'test_%'; ``` 该命令会清除掉任何匹配给定模式条件下的用户账号。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

谷哥的小弟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值