返回顶部
首页 > 资讯 > 数据库 >MySQL与PHP的基础与应用专题之表连接
  • 857
分享到

MySQL与PHP的基础与应用专题之表连接

2024-04-02 19:04:59 857人浏览 八月长安
摘要

概述 从今天开始, 小白我将带领大家一起来补充一下 数据库的知识. 表连接 表连接 (JOIN) 是在多个表之间通过连接条件. 使表之间发生关联, 进而能从多个表之间获取数据.

概述

从今天开始, 小白我将带领大家一起来补充一下 数据库的知识.

表连接

表连接 (JOIN) 是在多个表之间通过连接条件. 使表之间发生关联, 进而能从多个表之间获取数据.

表连接语法:

SELECT 表名1.列名, 表名2.列名 FROM 表1, 表2 WHERE 条件

表连接的几种方式:

内连接: join 或者 inner join

自连接: 同一张表内的连接

外连接:

  • 左外连接, left join
  • 右外连接, right join
  • 全外连接, full join

数据 (table1):

数据 (table2):

内连接

内连接是从结果表中删除与其他被连接表中没有匹配的所有行. (交集)

格式:

SELECT A.c1, B.c2 FROM A JOIN B ON A.c3 = B.c3

例子:


<?PHP

$conn = Mysqli_connect("localhost", "root","admin","study");

if ($conn) {
    echo "数据库链接成功\n";
} else {
    echo mysqli_connect_error();
}

# sql语句
$SQL = "SELECT table1.name, table1.age, table2.class
        FROM table1 JOIN table2
        ON table1.name = table2.name";

# 执行
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) {
    echo "SQL 语句执行成功!\n";
}else {
    echo mysqli_error($conn);
}

# 调试输出
while ($line = mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 关闭连接
mysqli_close($conn);

?>

输出结果:

数据库链接成功
SQL 语句执行成功!
Array
(
[name] => 杨富贵
[age] => 18
[class] => 数学
)
Array
(
[name] => 杨美丽
[age] => 19
[class] => 语文课
)
Array
(
[name] => 杨建国
[age] => 20
[class] => 英语课
)

左连接

包含做表的全部行 (不管右表是否存在与之匹配的行), 以及右表中全部匹配的行.

格式:

SELECT A.c1, B.c2 FROM A LEFT JOIN B ON A.c3 = B.c3

例子:


<?php

$conn = mysqli_connect("localhost", "root","admin","study");

if ($conn) {
    echo "数据库链接成功\n";
} else {
    echo mysqli_connect_error();
}

# SQL语句
$SQL = "SELECT table1.name, table1.age, table2.class
        FROM table1 LEFT JOIN table2
        ON table1.name = table2.name";

# 执行
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) {
    echo "SQL 语句执行成功!\n";
}else {
    echo mysqli_error($conn);
}

# 调试输出
while ($line = mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 关闭连接
mysqli_close($conn);

?>

输出结果:

数据库链接成功
SQL 语句执行成功!
Array
(
[name] => 杨富贵
[age] => 18
[class] => 数学课
)
Array
(
[name] => 杨美丽
[age] => 19
[class] => 语文课
)
Array
(
[name] => 杨建国
[age] => 20
[class] => 英语课
)
Array
(
[name] => 杨铁柱
[age] => 21
[class] =>
)

右连接

包含右表的全部行 (不管左表是否存在与之匹配的行), 以及左表中全部匹配的行.

格式:

SELECT A.c1, B.c2 FROM A RIGHT JOIN B ON A.c3 = B.c3

例子:


<?php

$conn = mysqli_connect("localhost", "root","admin","study");

if ($conn) {
    echo "数据库链接成功\n";
} else {
    echo mysqli_connect_error();
}

# SQL语句
$SQL = "SELECT table1.name, table1.age, table2.class
        FROM table1 RIGHT JOIN table2
        ON table1.name = table2.name";

# 执行
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) {
    echo "SQL 语句执行成功!\n";
}else {
    echo mysqli_error($conn);
}

# 调试输出
while ($line = mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 关闭连接
mysqli_close($conn);

?>

输出结果:

数据库链接成功
SQL 语句执行成功!
Array
(
[name] => 杨富贵
[age] => 18
[class] => 数学课
)
Array
(
[name] => 杨美丽
[age] => 19
[class] => 语文课
)
Array
(
[name] => 杨建国
[age] => 20
[class] => 英语课
)
Array
(
[name] =>
[age] =>
[class] => 历史课
)

全连接

包含左右两个表的全部行 (不管在另一个表中是否存在与之匹配的行).

格式:

SELECT A.c1, B.c2 FROM A LEFT JOIN B ON A.c3 = B.c3
UNION
SELECT A.c1, B.c2 FROM A RIGHT JOIN B ON A.c3 = B.c3

例子:


<?php

$conn = mysqli_connect("localhost", "root","admin","study");

if ($conn) {
    echo "数据库链接成功\n";
} else {
    echo mysqli_connect_error();
}

# SQL语句
$SQL = "SELECT table1.name, table1.age, table2.class
        FROM table1 LEFT JOIN table2 ON table1.name = table2.name
        UNioN 
        SELECT table1.name, table1.age, table2.class
        FROM table1 RIGHT JOIN table2 ON table1.name = table2.name";

# 执行
$result = mysqli_query($conn, $SQL);

# 查看是否执行成功
if ($result) {
    echo "SQL 语句执行成功!\n";
}else {
    echo mysqli_error($conn);
}

# 调试输出
while ($line = mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 关闭连接
mysqli_close($conn);

?>

输出结果:

数据库链接成功
SQL 语句执行成功!
Array
(
[name] => 杨富贵
[age] => 18
[class] => 数学课
)
Array
(
[name] => 杨美丽
[age] => 19
[class] => 语文课
)
Array
(
[name] => 杨建国
[age] => 20
[class] => 英语课
)
Array
(
[name] => 杨铁柱
[age] => 21
[class] =>
)
Array
(
[name] =>
[age] =>
[class] => 历史课
)

到此这篇关于MySQL与PHP的基础与应用专题之表连接的文章就介绍到这了,更多相关MySQL 表连接内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL与PHP的基础与应用专题之表连接

本文链接: https://lsjlt.com/news/139960.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL与PHP的基础与应用专题之表连接
    概述 从今天开始, 小白我将带领大家一起来补充一下 数据库的知识. 表连接 表连接 (JOIN) 是在多个表之间通过连接条件. 使表之间发生关联, 进而能从多个表之间获取数据. ...
    99+
    2024-04-02
  • MySQL与PHP的基础与应用专题之自连接
    概述 从今天开始, 小白我将带领大家一起来补充一下 数据库的知识. 自连接 自连接 (Self Join) 是一种特殊的表连接. 自连接指相互连接的表在物理上同为一张表, 但是逻辑...
    99+
    2024-04-02
  • MySQL与PHP的基础与应用专题之索引
    概述 从今天开始, 小白我将带领大家一起来补充一下 数据库的知识. 索引 索引 (Index) 是一种特殊的数据结构, 类似于图书的目录. 索引能够极大的提升数据库的查询效率. 如...
    99+
    2024-04-02
  • MySQL与PHP的基础与应用专题之创建数据库表
    概述 从今天开始, 小白我将带领大家一起来补充一下 数据库的知识. MySQL 安装 下载地址: https://dev.mysql.com/downloads/windows/i...
    99+
    2024-04-02
  • MySQL与PHP的基础与应用专题之数据控制
    目录概述数据控制语言MySQL权限体系用户管理创建用户删除用户修改密码权限管理查看权限用户授权撤销授权刷新权限注意事项概述 从今天开始, 小白我将带领大家一起来补充一下 数据库的知识...
    99+
    2024-04-02
  • MySQL与PHP的基础与应用专题之增删改查
    概述 从今天开始, 小白我将带领大家一起来补充一下 数据库的知识. 添加数据 SQL 语句: # 插入单条数据 INSERT INTO 表名 (列名1, 列名2, …) VAL...
    99+
    2024-04-02
  • MySQL与PHP的基础与应用专题之数据查询
    目录概述条件查询例1例2运算符IN例1例2运算符Like例1例2概述 从今天开始, 小白我将带领大家一起来补充一下 数据库的知识. 条件查询 我们可以使用关键词Where...
    99+
    2024-04-02
  • MySQL与PHP的基础与应用专题之内置函数
    概述 从今天开始, 小白我将带领大家一起来补充一下 数据库的知识. MySQL 内置函数 MySQL 内置函数可以帮助我们更方便的处理表中的数据, 简化操作. 数学函数: ...
    99+
    2024-04-02
  • MySQL与PHP的基础与应用专题之数据完整性
    目录概述数据完整性实体完整性域完整性参照完整性自定完整性唯一性外键创建主表&从表插入数据错误展示概述 从今天开始, 小白我将带领大家一起来补充一下 数据库的知识. 数据完整...
    99+
    2024-04-02
  • MySQL与PHP的基础与应用专题之数据查询语句
    目录概述ORDER BY例 1例 2LIMIT例 1例 2GROUP BY例 1例 2HAVING例 1例 2GROUP_CONCAT例 1例 2DISTINCT例 1例 2...
    99+
    2024-04-02
  • mysql表与表之间如何连接
    在MySQL中,表与表之间可以通过JOIN操作进行连接。JOIN操作是通过列值之间的匹配将两个或多个表中的数据关联起来。在JOIN操...
    99+
    2023-08-11
    mysql
  • MySQL与PHP中的表连接怎么用
    这篇文章给大家分享的是有关MySQL与PHP中的表连接怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。表连接表连接 (JOIN) 是在多个表之间通过连接条件. 使表之间发生关联, 进而能从多个表之间获取数据....
    99+
    2023-06-29
  • Java基础之JDBC的数据库连接与基本操作
    目录一、JDBC概述二、JDBC操作数据库、操作表步骤三、JDBC体系结构与JDBC API四、注册与加载驱动五、建立连接(Connection)六、使用PreparedStatem...
    99+
    2024-04-02
  • Python的SQLalchemy模块连接与操作MySQL的基础示例
    一、SQLalchemy简介 SQLAlchemy是一个开源的SQL工具包,基本Python编程语言的MIT许可证而发布的对象关系映射器。SQLAlchemy提供了“一个熟知的企业级全套持久性模式,使用OR...
    99+
    2022-06-04
    示例 模块 操作
  • Java基础之JDBC连接数据库与基本操作的示例分析
    小编给大家分享一下Java基础之JDBC连接数据库与基本操作的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Java可以用来干什么Java主要应用于:1....
    99+
    2023-06-14
  • 基于PHP+MySQL动漫专题网站系统的设计与实现
    随着时代的发展,人们兴趣爱好也越来越广泛,动漫是当前年轻人比较钟爱的一个兴趣爱好之一,每年都会有大量的动漫爱好者定期的举办一些交流活动等,但是线下的这种交流方式明显不能满足当前动漫爱好者的需求,为此我...
    99+
    2023-09-22
    mysql php 数据库
  • pytorch collate_fn的基础与应用教程
    目录作用原则基础datasetdataloader应用情形总结作用 collate_fn:即用于collate的function,用于整理数据的函数。 说到整理数据,你当然要会用数据...
    99+
    2024-04-02
  • python 类的基础详解与应用
    目录类的定义类对象变量类变量局部变量实例变量私有变量类的方法特殊方法继承单继承多继承类的定义 # class是定义类的关键字,ClassName为类的名称 class Class...
    99+
    2024-04-02
  • 如何实现mysql与php的连接
    这篇文章将为大家详细讲解有关如何实现mysql与php的连接,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。  定义:  PDO是PHP Data Object的简称,代表PHP数据对象...
    99+
    2023-06-06
  • PHP与MySQL连接的方法总结
    本篇文章给大家带来了关于PHP视频教程的相关知识,其中主要介绍了PHP与MySQL连接的相关内容,PHP与MySQL的连接有三种API接口,分别是:PHP的MySQL扩展 、PHP的mysqli扩展 、PHP数据对象(PDO),下面分别来看...
    99+
    2023-05-14
    php
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作