article文章表:

aid	  title    content        uid
1   文章1     文章1正文内容...    1
2   文章2     文章2正文内容...    1
3   文章3     文章3正文内容...    2
4   文章4     文章4正文内容...    4

user用户表:

uid    username    email
1      admin     admin@5idev.com
2      小明      xiao@163.com
3      Jack      jack@gmail.com

LEFT JOIN:

SELECT article.aid,article.title,user.username FROM article LEFT JOIN user ON article.uid = user.uid

aid    title    username
1     文章1     admin
2     文章2     admin
3     文章3     小明
4     文章4     NULL

  

RIGHT JOIN:

SELECT article.aid,article.title,user.username FROM article RIGHT JOIN user ON article.uid = user.uid

aid     title    username
1       文章1    admin
2       文章2    admin
3       文章3    小明
NULL     NULL     Jack

  

INNER JOIN:

SELECT article.aid,article.title,user.username FROM article INNER JOIN user ON article.uid = user.uid

aid    title    username
1     文章1     admin
2     文章2     admin
3     文章3     小明

SELECT...FROM  table1  INNER | LEFT | RIGHT JOIN table2 ON conditiona

FROM左表(table1),JOIN右表(table2)

INNER JOIN (内连接):   取得两个表中存在连接匹配关系的记录,INNER可以省略。
LEFT JOIN   (左连接):   取得左表(table1)完全记录,即使右表(table2)并无对应匹配记录。
RIGHT JOIN (右连接):   取得右表(table2)完全记录,即是左表(table1)并无匹配对应记录。

例子1:

$access = Db::table('qi_role_user')->alias('a')
->join('qi_role_menu b', 'a.role_id = b.role_id', 'INNER') //'INNER'为默认,可省略
->where('a.user_id',$uid)
->select();

  

例子2:

mysql中操作

SELECT * FROM qi_role_user LEFT JOIN qi_role_menu ON qi_role_menu.role_id = qi_role_user.role_id

WHERE qi_role_user.user_id = ;

PHP关联查询的更多相关文章

  1. JDBC MySQL 多表关联查询查询

    public static void main(String[] args) throws Exception{ Class.forName("com.mysql.jdbc.Driver&q ...

  2. MYSQL基础操作之数据约束与关联查询

    一.MYSQL约束 1.默认值约束,当字段没有插入值的时候,mysql自动给该字段分配默认值. 默认值的字段允许为空. 对默认值字段也可以插入null. CREATE TABLE STUDENT( I ...

  3. C#代码中实现两个表(DataTable)的关联查询(JOIN)

    之前通常都是使用SQL直接从数据库中取出表1和表2关联查询后的数据,只需要用一个JOIN就可以了,非常方便.近日遇到一种情况,两个表中的数据已经取到代码中,需要在代码中将这两个表关联起来,并得到它们横 ...

  4. Mybatis关联查询和数据库不一致问题分析与解决

    Mybatis关联查询和数据库不一致问题分析与解决 本文的前提是,确定sql语句没有问题,确定在数据库中使用sql和项目中结果不一致. 在使用SpringMVC+Mybatis做多表关联时候,发现也不 ...

  5. Mysql多表表关联查询 inner Join left join right join

    Mysql多表表关联查询 inner Join left join right join

  6. YII2-数据库数据查询方法,关联查询with, joinWith区别和分页

    一.ActiveRecord 活动记录 1.with关联查询 例如,查询评论 $post = Post::find()->with('comments'); 等价于以下结果集 SELECT * ...

  7. Mybatis高级查询之关联查询

    learn from:http://www.mybatis.org/mybatis-3/zh/sqlmap-xml.html#Result_Maps 关联查询 准备 关联结果查询(一对一) resul ...

  8. Spring+MyBatis框架中sql语句的书写,数据集的传递以及多表关联查询

    在很多Java EE项目中,Spring+MyBatis框架经常被用到,项目搭建在这里不再赘述,现在要将的是如何在项目中书写,增删改查的语句,如何操作数据库,以及后台如何获取数据,如何进行关联查询,以 ...

  9. [NHibernate]一对多关系(关联查询)

    目录 写在前面 文档与系列文章 一对多查询 总结 写在前面 上篇文章介绍了nhibernate的一对多关系如何配置,以及级联删除,级联添加数据的内容.这篇文章我们将学习nhibernate中的一对多关 ...

  10. [NHibernate]多对多关系(关联查询)

    目录 写在前面 文档与系列文章 多对多关系关联查询 总结 写在前面 上篇文章介绍了nhibernate中对一对多关系进行关联查询的几种方式,以及在使用过程需要注意的问题.这篇文章对多对多关系的查询处理 ...

随机推荐

  1. Java常见的几种内存溢出及解决方案

    1.JVM Heap(堆)溢出:java.lang.OutOfMemoryError: Java heap space JVM在启动的时候会自动设置JVM Heap的值, 可以利用JVM提供的-Xmn ...

  2. Mac环境 安装brew

    一.brew官网主页上的方法: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/insta ...

  3. WebBench压力测试工具(详细源码注释+分析)

    本文适合人群:对WebBench实现感兴趣的人 WebBench原理: Linux下使用的服务器压力测试工具,利用fork建立多个子进程,每个子进程在测试时间内不断发送请求报文,建立多个连接,然后由父 ...

  4. COMCMS_CORE 起步篇,如何运行和部署

    前言:关于最近开源后,不少朋友问,怎么我下载下来,运行不了.或者怎么没有左边菜单.货不对板?还是我吃了数据? 感言:开源不容易,更不容易的是,明明毫无保留,还这么大误会,真是泪奔..... 好了.步入 ...

  5. Plugin 'Lombok Plugin' is incompatible with this installation

    作者:13 GitHub:https://github.com/ZHENFENG13 版权声明:本文为原创文章,未经允许不得转载. Installation Error Plugin 'Lombok ...

  6. 如何向微软 Docs 和本地化社区提交翻译贡献

    Docs (docs.microsoft.com)是微软新版的文档网站,重新规划了各项技术栈的文档结构,看起来比 MSDN 可读性更好.虽然 Docs 提供了各种语言的版本,但大多是机器翻译,某些中文 ...

  7. 【开源】Skatch 正式发布 - 极速渲染抽象派草图

    极速渲染抽象派草图 DEMO Simple Letter 简介 Skatch 这个词由 sketch wechart abstract cax 混合而成的一个新词,代表了cax wechart 抽象艺 ...

  8. ubuntu 添加开机启动服务

    新建umpserver.service [Unit] Description=UMPServer After=syslog.target network.target remote-fs.target ...

  9. OSGI 环境搭建

    第一步,打开eclipse,新建一个plugin工程,如下图所示 第二步,输入工程的名字,并且在Target Platform中选择an OSGI framework中选中standard,如下图所示 ...

  10. BZOJ1283 序列 网络流区间覆盖模型

    就是区间覆盖模型的费用流版. 区间覆盖模型