iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >thinkphp5中的join怎么用
  • 675
分享到

thinkphp5中的join怎么用

2023-06-30 09:06:41 675人浏览 泡泡鱼
摘要

本篇内容主要讲解“thinkPHP5中的join怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“thinkphp5中的join怎么用”吧!在thinkphp5中,join用于根据两个或者多个

本篇内容主要讲解“thinkPHP5中的join怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“thinkphp5中的join怎么用”吧!

在thinkphp5中,join用于根据两个或者多个表中列之间的关系,从这些表中查询数据,是连贯操作方法之一,返回的结果是一个模型对象,语法为“join ( 要关联的表名以及别名 [ 关联条件 [ 关联类型]] )”。

本文操作环境:windows10系统、ThinkPHP5版、Dell G3电脑。

thinkphp5中join的用法是什么

JOIN方法也是连贯操作方法之一,用于根据两个或多个表中的列之间的关系,从这些表中查询数据。

说明

object join ( mixed join [, mixed $condition = null [, string $type = 'INNER']] )

参数

join:要关联的(完整)表名以及别名,支持三种写法:

  • 写法1:[ '完整表名或者子查询'=>'别名' ]

  • 写法2:'完整表名 别名'

  • 写法3:'不带数据表前缀的表名'

condition:关联条件。可以为字符串数组, 为数组时每一个元素都是一个关联条件。

type:关联类型。可以为:INNER、LEFT、RIGHT、FULL,不区分大小写,默认为INNER。

返回值:模型对象

join通常有下面几种类型,不同类型的join操作会影响返回的数据结果。

  • INNER JOIN: 等同于 JOIN(默认的JOIN类型),如果表中有至少一个匹配,则返回行

  • LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行

  • RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行

  • FULL JOIN: 只要其中一个表中存在匹配,就返回行

示例如下:

Db::table('think_artist')->alias('a')->join('think_work w','a.id = w.artist_id')->join('think_card c','a.card_id = c.id')->select();
Db::table('think_artist')->alias('a')->join('__WORK__ w','a.id = w.artist_id')->join('__CARD__ c','a.card_id = c.id')->select();
$join = [    ['think_work w','a.id=w.artist_id'],    ['think_card c','a.card_id=c.id'],];Db::table('think_user')->alias('a')->join($join)->select();

以上三种写法的效果一样,__WORK__和 __CARD__在最终解析的时候会转换为 think_work和 think_card。注意:'_表名_'这种方式中间的表名需要用大写

如果不想使用别名,后面的条件就要使用表全名,可以使用下面这种方式

Db::table('think_user')->join('__WORK__','__ARTIST__.id = __WORK__.artist_id')->select();

默认采用INNER JOIN 方式,如果需要用其他的JOIN方式,可以改成

Db::table('think_user')->alias('a')->join('Word w','a.id = w.artist_id','RIGHT')->select();

表名也可以是一个子查询

$subsql = Db::table('think_work')->where(['status'=>1])->field('artist_id,count(id) count')->group('artist_id')->buildSql();Db::table('think_user')->alias('a')->join([$subsql=> 'w'], 'a.artist_id = w.artist_id')->select();

因buildSql返回的语句带有(),所以这里不需要在两端再加上()。

到此,相信大家对“thinkphp5中的join怎么用”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: thinkphp5中的join怎么用

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • thinkphp5中的join怎么用
    本篇内容主要讲解“thinkphp5中的join怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“thinkphp5中的join怎么用”吧!在thinkphp5中,join用于根据两个或者多个...
    99+
    2023-06-30
  • thinkphp5中session怎么用
    本篇内容主要讲解“thinkphp5中session怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“thinkphp5中session怎么用”吧!在thinkphp5中,session方法用...
    99+
    2023-06-30
  • ThinkPHP5中怎么使用redis
    本文小编为大家详细介绍“ThinkPHP5中怎么使用redis”,内容详细,步骤清晰,细节处理妥当,希望这篇“ThinkPHP5中怎么使用redis”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。前提:因为本文主要...
    99+
    2023-07-05
  • MySQL中JOIN怎么用
    小编给大家分享一下MySQL中JOIN怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!简介A的独有+AB的公有B的独有+AB的公有AB的公有A的独有B的独有A...
    99+
    2023-06-29
  • ThinkPHP5中怎么调用方法
    本篇内容主要讲解“ThinkPHP5中怎么调用方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ThinkPHP5中怎么调用方法”吧!一、控制器中的方法调用控制器是应用程序中处理HTTP请求并向...
    99+
    2023-07-05
  • thinkphp5中的前置方法怎么使用
    今天小编给大家分享一下thinkphp5中的前置方法怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、概念前置方法是...
    99+
    2023-07-05
  • python中join怎么使用
    在Python中,`join()`是字符串的一个方法,用于将字符串序列中的元素以指定的分隔符连接起来。它的基本语法如下:```pyt...
    99+
    2023-09-05
    python join
  • sql中join on怎么用
    sql 中的 join on 将多张表中记录基于共同字段组合在一起,用法如下:定义 join 类型:inner join、left join、right join指定比较运算符:=、&g...
    99+
    2024-05-08
  • mysql中的join、left join和right join的用法
    本篇内容介绍了“mysql中的join、left join和right join的用法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大...
    99+
    2024-04-02
  • sql中inner join怎么用
    这篇文章给大家分享的是有关sql中inner join怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。sql中inner join的用法inner join是多表连接关键字。...
    99+
    2024-04-02
  • javascript中join怎么使用
    这篇文章主要讲解了“javascript中join怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javascript中join怎么使用”吧! ...
    99+
    2024-04-02
  • ThinkPHP5怎么使用QueryList4
    本文将为大家详细介绍“ThinkPHP5怎么使用QueryList4”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“ThinkPHP5怎么使用QueryList4”能够给你意想不到的收获,请大家跟着小编的思路慢...
    99+
    2023-06-06
  • ThinkPHP5中查询方法怎么使用
    这篇文章主要讲解了“ThinkPHP5中查询方法怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ThinkPHP5中查询方法怎么使用”吧!一、查询之和的使用方法在ThinkPHP5中,...
    99+
    2023-07-05
  • Python中的join()函数怎么使用
    这篇文章主要介绍“Python中的join()函数怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python中的join()函数怎么使用”文章能帮助大家解决问题。Python中 join()...
    99+
    2023-07-05
  • sql语句中的join怎么使用
    在SQL中,JOIN用于将两个或多个表中的行连接在一起。JOIN操作的基本语法如下:```sqlSELECT 列名FROM ...
    99+
    2023-10-10
    sql join
  • HIVE中left semi join怎么用
    这篇文章主要介绍了HIVE中left semi join怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 实验:hive> select * f...
    99+
    2023-06-03
  • mysql中join和on怎么用
    小编给大家分享一下mysql中join和on怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 用...
    99+
    2024-04-02
  • VBScript中Join函数怎么用
    小编给大家分享一下VBScript中Join函数怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Join 函数 返回一个字符串,此字符串由包含在数组...
    99+
    2023-06-08
  • JavaScript中join()方法怎么用
    这篇文章将为大家详细讲解有关JavaScript中join()方法怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。join()将数组的所有元素连接成一个字符串。元素将...
    99+
    2024-04-02
  • thinkphp5 db类怎么使用
    本篇内容介绍了“thinkphp5 db类怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、连接数据库连接数据库有两种方式,一种是在...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作