当前位置: 首页 >> 发展
总结vue3 的一些知识点:MySQL 连接的使用|最新资讯
来源:博客园     时间:2023-06-09 04:46:39

MySQL 连接的使用

在前几章节中,我们已经学会了如何在一张表中读取数据,这是相对简单的,但是在真正的应用中经常需要从多个数据表中读取数据。


(资料图片仅供参考)

本章节我们将向大家介绍如何使用 MySQL 的 JOIN 在两个或多个表中查询数据。

你可以在 SELECT, UPDATE 和 DELETE 语句中使用 Mysql 的 JOIN 来联合多表查询。

JOIN 按照功能大致分为如下三类:

  • INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录。
  • **LEFT JOIN(左连接):**获取左表所有记录,即使右表没有对应匹配的记录。
  • RIGHT JOIN(右连接):与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。

本章节使用的数据库结构及数据下载:kxdang-mysql-join-test.sql。

在命令提示符中使用 INNER JOIN

我们在RUNOOB数据库中有两张表 tcount_tbl 和 kxdang_tbl。两张数据表数据如下:

实例

尝试以下实例:

测试实例数据

mysql> use RUNOOB;Database changedmysql> SELECT * FROM tcount_tbl;+---------------+--------------+| kxdang_author | kxdang_count |+---------------+--------------+| 菜鸟教程  | 10           || RUNOOB.COM    | 20           || Google        | 22           |+---------------+--------------+3 rows in set (0.01 sec) mysql> SELECT * from kxdang_tbl;+-----------+---------------+---------------+-----------------+| kxdang_id | kxdang_title  | kxdang_author | submission_date |+-----------+---------------+---------------+-----------------+| 1         | 学习 PHP    | 菜鸟教程  | 2017-04-12      || 2         | 学习 MySQL  | 菜鸟教程  | 2017-04-12      || 3         | 学习 Java   | RUNOOB.COM    | 2015-05-01      || 4         | 学习 Python | RUNOOB.COM    | 2016-03-06      || 5         | 学习 C      | FK            | 2017-04-05      |+-----------+---------------+---------------+-----------------+5 rows in set (0.01 sec)

接下来我们就使用MySQL的**INNER JOIN(也可以省略 INNER 使用 JOIN,效果一样)**来连接以上两张表来读取kxdang_tbl表中所有kxdang_author字段在tcount_tbl表对应的kxdang_count字段值:

INNER JOIN

mysql> SELECT a.kxdang_id, a.kxdang_author, b.kxdang_count FROM kxdang_tbl a INNER JOIN tcount_tbl b ON a.kxdang_author = b.kxdang_author;+-------------+-----------------+----------------+| a.kxdang_id | a.kxdang_author | b.kxdang_count |+-------------+-----------------+----------------+| 1           | 菜鸟教程    | 10             || 2           | 菜鸟教程    | 10             || 3           | RUNOOB.COM      | 20             || 4           | RUNOOB.COM      | 20             |+-------------+-----------------+----------------+4 rows in set (0.00 sec)

以上 SQL 语句等价于:

WHERE 子句

mysql> SELECT a.kxdang_id, a.kxdang_author, b.kxdang_count FROM kxdang_tbl a, tcount_tbl b WHERE a.kxdang_author = b.kxdang_author;+-------------+-----------------+----------------+| a.kxdang_id | a.kxdang_author | b.kxdang_count |+-------------+-----------------+----------------+| 1           | 菜鸟教程    | 10             || 2           | 菜鸟教程    | 10             || 3           | RUNOOB.COM      | 20             || 4           | RUNOOB.COM      | 20             |+-------------+-----------------+----------------+4 rows in set (0.01 sec)

MySQL LEFT JOIN

MySQL left join 与 join 有所不同。 MySQL LEFT JOIN 会读取左边数据表的全部数据,即便右边表无对应数据。

实例

尝试以下实例,以kxdang_tbl为左表,tcount_tbl为右表,理解 MySQL LEFT JOIN 的应用:

LEFT JOIN

mysql> SELECT a.kxdang_id, a.kxdang_author, b.kxdang_count FROM kxdang_tbl a LEFT JOIN tcount_tbl b ON a.kxdang_author = b.kxdang_author;+-------------+-----------------+----------------+| a.kxdang_id | a.kxdang_author | b.kxdang_count |+-------------+-----------------+----------------+| 1           | 菜鸟教程    | 10             || 2           | 菜鸟教程    | 10             || 3           | RUNOOB.COM      | 20             || 4           | RUNOOB.COM      | 20             || 5           | FK              | NULL           |+-------------+-----------------+----------------+5 rows in set (0.01 sec)

以上实例中使用了 LEFT JOIN,该语句会读取左边的数据表 kxdang_tbl 的所有选取的字段数据,即便在右侧表 tcount_tbl中 没有对应的 kxdang_author 字段值。

MySQL RIGHT JOIN

MySQL RIGHT JOIN 会读取右边数据表的全部数据,即便左边边表无对应数据。

实例

尝试以下实例,以kxdang_tbl为左表,tcount_tbl为右表,理解MySQL RIGHT JOIN的应用:

RIGHT JOIN

mysql> SELECT a.kxdang_id, a.kxdang_author, b.kxdang_count FROM kxdang_tbl a RIGHT JOIN tcount_tbl b ON a.kxdang_author = b.kxdang_author;+-------------+-----------------+----------------+| a.kxdang_id | a.kxdang_author | b.kxdang_count |+-------------+-----------------+----------------+| 1           | 菜鸟教程    | 10             || 2           | 菜鸟教程    | 10             || 3           | RUNOOB.COM      | 20             || 4           | RUNOOB.COM      | 20             || NULL        | NULL            | 22             |+-------------+-----------------+----------------+5 rows in set (0.01 sec)

以上实例中使用了 RIGHT JOIN,该语句会读取右边的数据表 tcount_tbl 的所有选取的字段数据,即便在左侧表 kxdang_tbl 中没有对应的kxdang_author 字段值。

在 PHP 脚本中使用 JOIN

PHP 中使用 mysqli_query() 函数来执行 SQL 语句,你可以使用以上的相同的 SQL 语句作为 mysqli_query() 函数的参数。

尝试如下实例:

MySQL ORDER BY 测试:

菜鸟教程 MySQL JOIN 测试

";echo "";while($row = mysqli_fetch_array($retval, MYSQLI_ASSOC)){ echo " ". " ". " ". "";}echo "
教程 ID作者登陆次数
{$row["kxdang_id"]}{$row["kxdang_author"]} {$row["kxdang_count"]}
";mysqli_close($conn);?>

标签:
总结vue3 的一些知识点:MySQL 连接的使用|最新资讯 MySQL连接的使用在前几章节中,我们已经学会了如何在一张表中读取数据
【天天播资讯】【短讯】茅台冰淇淋跨界卖咖啡!定价中高端 多款产品已售罄 【短讯】茅台冰淇淋跨界卖咖啡!定价中高端多款产品已售罄。新闻资讯提
环球实时:《怪物猎人6》?英伟达数据库泄露的日本游戏 据英伟达GeFroce数据库泄露,日本游戏发行商有望在本月公布以下游戏:S
中国海洋石油(00883.HK):6月8日南向资金增持1046.5万股 当前快讯 6月8日北向资金增持1046 5万股中国海洋石油(00883 HK)。近5个交易日
【环球报资讯】中国电信广东客服:受影响的移动用户接听语音业务已全面恢复 【中国电信广东客服:受影响的移动用户接听语音业务已全面恢复】6月8日
上海电影王健儿:3年3亿孵化“文创+科创”,重点关注上下游创新型企业_即时焦点 24小时财经资讯平台,依托新锐财经日报《每日经济新闻》(NationalBusin
国羽全线晋级8强!石宇奇李诗沣何冰娇赢德比,女单女双各入围3席 当前视点 石宇奇、李诗沣以及何冰娇赢得了德比,国羽在五个单项都晋级了8强,其
每日速递:养老金上调2023最新方案公布:不是人人都涨,事关你的钱袋子 养老金上涨消息在5月22日就给出了确定的方案,自此养老金19连涨落定。
被车追尾了怎么处理_热门 被车追尾了的处理是报警,当事人需要停车检查现场情况,若有人受伤的需
交易异动!*ST柏龙:近3个交易日上涨10.59% 无未披露的重大事项_聚焦 *ST柏龙(SZ002776,收盘价:2 82元)6月8日晚间发布公告称,证券代码
环球简讯:国家邮政局组织召开农村寄递物流体系建设专题调研企业座谈会 每经AI快讯,据国家邮政局网站消息,6月8日,国家邮政局组织召开农村寄
塔里木大学体育馆项目获“中国钢结构金奖”|世界时讯 石榴云 新疆日报讯(记者米日古力·吾通讯员张晓红报道)日前,在上海
放学后使用-当前时讯 1、我来回答吧UEE是通过参加了韩国的综艺节目“介绍明星的朋友”而走红
每日热点:陆家嘴论坛|上海自贸区如何促进全国高水平对外开放登上新台阶? 6月8日,以“全球金融开放与合作:引导经济复苏的新动力”为主题的第十
马斯克疯了:特斯拉核心技术FSD 同行们快来免费用? 马斯克疯了:特斯拉核心技术FSD同行们快来免费用?
全球今日报丨经典光速下班:回看孙颖莎3-0斯佐科斯,对手已经完全被打麻了 提到乒乓球比赛里的光速下班,对于国乒运动员们来说,尤其是主力选手并
Windhorst:若保罗真被太阳裁掉 我认为他会去湖人或快船 直播吧6月8日讯据此前报道,太阳或将裁掉克里斯-保罗。名记Windhorst在
陵水酸粉:伴随陵水人长大的乡愁味道 | 海外传播官种草海南非遗-焦点信息 提起陵水这座位于海南省南端的滨海城市,就不得不提到其独有的风味小食
多位大咖分享工业设计“干货” 6月8日下午,中山市工业设计专题分享会在中山职业技术学院举行,并同步
中超最新积分榜!成都降到第三,申花回归第二,青岛海牛4连败 世界快消息 上海申花在客场击败青岛海牛,送给对手4连败的同时,超越成都蓉城回归
当前最新:1是什么意思网络用语(网络促销什么意思) 来为大家解答以上问题。1是什么意思网络用语,网络促销什么意思这个很
网罗天下英才什么意思(网罗天下是什么的意思啊)-环球速看 来为大家解答以上问题。网罗天下英才什么意思,网罗天下是什么的意思啊
世界今头条!淮北市教育局(关于淮北市教育局介绍) 来为大家讲解以上的问题。淮北市教育局,北市教育局介绍这个很多人还不
首批路测牌照发放 无人驾驶加速落地 这些概念股机构关注 全国首批无人驾驶路测牌照发放,无人驾驶正加速落地。今日,大盘弱势震
嘉陵600边三轮摩托车价格_嘉陵600 1、这车细节上真的需要很多地方改进。2、橡胶件很垃圾,新车就龟裂,水

广告

X 关闭

广告

X 关闭