mysql一次查询进行2次内连接

表中两个列分别与另外的同一张表内连接,注意连接的表是同一张表,
这就导致了两次接连产生的列名完全重复导致被后面一次覆盖,有什么方法可以同时查询并且区分出来?
我的代码:
$messages = DB::select("SELECT * FROM ({$sql}) as mes INNER JOIN members as m1 ON mes.send_id=m1.id INNER JOIN members as m2 ON mes.receive_id=m2.id GROUP BY mes.both_id ORDER BY mes.id DESC");

0

2个回答

字段取别名,以ID为例:
图片说明

0

取别名,做伪表,一张表完全可以当2张表去使用

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
mysql 内连接,连续两次使用同一张表,自连接
1、内连接 有两个表,学生表student,班级表:class 班级表class: 学生表student: 内连接: select * from class INNER JOIN student on class.id=student.classId 自己也喜欢写成如下这种形式: select * from clas
【mysql】连表查询(内连接,左连接,右连接,全外连接)
连表查询(内查询,左查询,右查询,全外查询) 说明 正文 创建表单 1:创建部门表:department 2:创建员工表:employee 内连接 左连接 右连接 全外连接 连表查询(内查询,左查询,右查询,全外查询) 说明 mysql版本:Server version: 5.7.17 MySQL Community Server (GPL) 操作系统:win...
MySQL连接查询 内连接和外连接的区别
MySQL 连接查询 1.使用连接查询的场景 将多张表进行记录的连接查询(按照某个字段指定的条件进行数据的拼接); 进行数据的拼接(两张表的内容显示在一个结果表中 使用连接查询) 最终的结果是:记录数有可能变化,字段数一定会增加(至少两张表的合并) 意义:在用户查看数据的时候,显示的数据来自于多张表 连接查询的分类 4类 内连接 inner join内连接 【掌握】
Mysql-Innodb索引二次查找解决方案
一、为什么会造成二级查找 因为Innodb二级索引存储的是主键,所以通过索引查找时,第一次查询是通过二级索引找到主键值,第二次查询是通过主键在聚簇索引找到对应的行位置 二、解决方案 1. 索引覆盖 何为索引覆盖?只查找该索引的值。 select index_column from table 只查找二级索引的值,则不需要在去聚簇索引进行二次查找 2.延时关联 先使...
mysql 连接查询指的是将两张表或多张表关联到一起进行查询,获取一个表的行与另一个表的行匹配的数据。常见的连接查询包括内连接(等值连接)、左(外)连接、右(外)连接和交叉连接(完全连接)等
连接查询指的是将两张表或多张表关联到一起进行查询,获取一个表的行与另一个表的行匹配的数据。常见的连接查询包括内连接(等值连接)、左(外)连接、右(外)连接和交叉连接(完全连接)等。下面这张图形象的展示了这几种连接查询所获取的结果集:
Mysql—— 内连接、左连接、右连接以及全连接查询
获取 boy 、girl 表下载地址 一、内连接查询  inner join 关键字:inner  join   on 语句:select * from a_table a inner join b_table b on a.a_id = b.b_id; 说明:组合两个表中的记录,返回关联字段相符的记录,也就是返回两个表的交集(阴影)部分。 案例解释:在boy表和girl 表中查出...
(MySql数据库使用经验)MySql的高级查询之内连接,外连接,交叉连接以及on,exists,order by,union关键字
连接查询: 将两张表或者两张以上的表进行记录的连接(按照某个指定的条件进行数据拼接)。 连接查询的使用: 在用户查看数据的时候,需要显示的数据来自多张表. 连接查询语法: 需要使用join 关键字。 使用方式为: 左表 join 右表,左表: 在join关键字左边的表,右表: 在join关键字右边的表。 连接查询: SQL中将连接查询分成四类: 分别为,1内连接,2外连接,4交叉连接 ...
09--MySQL自学教程:多表查询之内连接、外连接以及【子查询】
1.为什么要拆表?去除冗余数据 2.表与表之间的关系
MySQL中的表连接(外连接、内连接、交叉连接、自连接)
表TestA表TestBSQL的表连接分为:外连接、内连接、交叉连接外连接外连接分为左外连接、右外连接、全外连接1.左外连接以左侧的表为基表,显示基表的所有行、列,外表如果条件不匹配则外表中所有字段显示为nullselect * from TestA a left join TestB b on a.id=b.id;2.右外连接以右侧的表为基表,显示基表的所有行、列,外表如果条件不匹配则外表中所有...
MySQL-分组查询(GROUP BY)及二次筛选(HAVING)
MySQL-分组查询(GROUP BY)及二次筛选(HAVING) 原创 2015年03月06日 15:05:09 11747 为了测试GROUP BY 语句,我们创建两张表,并往表中添加数据 -- 创建部门表 CREATE TABLE IF NOT EXISTS department( id TINYINT UNSIGNED AUTO_INCREMEN
Mysql之连接查询(交叉连接,内连接,外连接,using关键字使用场景)
连接查询 连接查询:将多张表连到一起进行查询(会导致记录数行和字段数列发生改变) 连接查询的意义 在关系型数据库设计过程中,实体(表)与实体之间是存在很多联系的。在关系型数据库表的设计过程中,遵循着关系来设计:一对一,一对多和多对多,通常在实际操作的过程中,需要利用这层关系来保证数据的完整性。 连接查询分类 连接查询一共有以下几类: 交叉连接 内连接 外连接:左外连接(左连接)和右...
MySQL 查询语句返回某字段出现超过1次的所有记录
查询语句返回某字段出现超过1次的所有记录 比如: 现在有一张表chat,字段分别为id,chat_time,nickname,words; 写一条查询语句,要求返回nickname出现超过1次的所有记录 数据为: 按照要求应该返回id为9,10,11,12四条记录 对应的sql语句可以这样写: select * from chat where nickname in (select
MySQL内连接
内连接 又称为简单连接,或者自然连接,是一种常见的连接查询 内连接使用比较运算符,对两个表中的数据,进行比较,并列出与连接条件匹配的数据行,组合成新的记录。在内连接查询中,只有满足条件的记录,才会出现在查询结果中 语法格式 SELECT 查询字段 FROM 表1 [INNER] JOIN 表2 ON 表1.关系字段=表2.关系字段;参数说明INNER JOIN,用于连接两个表,其中,INNE
MySQL-99语法:外连接与内连接-(左内连接多表和查询)
知己海内存 2016-12-14 00:09 -- 外连接: 不仅将两个表中满足条件的数据查询出来,也将不满足条件的数据查询出来 左外连接:不仅将两个表中满足条件的数据查询出来,也将不满足条件的左表中的数据查询出来 右外连接:不仅将两个表中满足条件的数据查询出来,也将不满足条件的右表中的数据查询出来 满外连接:(oracle中支持) 将左右表中不满足条件的数据同时查询吃来
MySQL的多表查询(交叉连接,内连接,外连接)
MySQL的多表查询多表的查询方式:(假设有两张表A,B)交叉连接语法:SELECT * FROM A,B;总结:得到的查询结果是两张表的笛卡尔积,也就是用A表中的每条数据都去匹配B表中的所有数据,获得的结果往往不是我们需要的,一般很少使用交叉连接。内连接(inner join ,inner 可以省略) 显示内连接 语法:SELECT * FROM A INNER JOIN B ON 条件; 隐示内
【Mysql】利用内连接与嵌套查询实现多表查询,主键、外键的基本概念
虽然多表查询,在计算机的必须课,数据库,里面已经大讲特讲,但是这个难点很多老师都没有讲深讲透。跟你净扯一大堆,左连接右连接的东西,让人一头雾水。老师把所有多表查询的方法告诉你,但是到头来一种方法都没有掌握。其实只要记住一种就够了,学会多表查询,除了在你考数据库能够拿到很高分之外,到了实际应用,很多地方都用到多表查询。比如论坛工程中分析回帖发帖的关系,提供该用户发了什么帖子的功能、比如信息管理系统中
sql中什么时候用内连接查询,什么时候用外连接查询?用起来好像一样啊!
我用内连接查询和外连接查询的结果是一样的,两者有什么不同? 需要查找两张表同时存在的数据,使用内连接需要查找两张表中一张表存在,另一张表不存在的时候使用左外链接 或 右外链接内连接的查询结果都是满足连接条件的元组。但有时我们也希望输出那些不满足连接条件的元组信息。比如,我们想知道每个学生的选课情况,包括已经选课的学生(这部分学生的学号在学生表中有,在选课表中也有,是满足连接条件的),也包括没有
mysql中内连接和外连接on后的条件何时生效说明
mysql中内连接和外连接on后的条件何时生效说明
mysql的查询、子查询及连接查询 , 左连接,右联接,内连接
一、mysql查询的五种子句 where(条件查询)、having(筛选)、group by(分组)、order by(排序)、limit(限制结果数) 1、where常用运算符: 比较运算符 > , ),>= , in(v1,v2..vn)
MySQL(十二):隐式内链接与显示内链接查询(未完)
上图为韦恩图,用于描述集合关系 不用怀疑,我没打错字 隐式查询与显示查询都属于多表查询,因为都是一次性查询多个表 主要作用为查询多个表然后对查询结果做筛选 隐式连接命令; SELECT  列名1,列名2   FROM 表名1,表名2  WHERE 表名1.列名1=表名2.列名2 命令意译:查询列1,列2  来自 表1 表2  条件为  。。。。。 要查询的列名与表名顺序相同 ...
MySQL连接查询语句(内连接,外连接)
连接查询 内连接 select suppliers.s_id,s_name,f_name,f_price from suppliers,fruits where suppliers.s_id = fruits.s_id   上述查询等价于inner join on 内连接查询 select suppliers.s_id,s_name,f_name,f_price from su...
Mysql 多表连接查询
本文部分内容转载至:Mysql 多表查询详解,同时感谢原作者的整理与创作;
Mysql连接查询的优化
通俗的讲内连接只会查出满足on条件下的记录,外连接则是会查出(tab a left join tab b),不管tab a的记录与tab b的记录是否匹配,tab a都会有记录,只是tab b的记录为不为空而已,右连接则相反 在使用left join (或 right join )时,应该清楚的知道一下几点:1.on与where的执行顺序on 条件(A left join B on 条件表达式中的...
MySQL连接查询中索引的重要性
在mysql中,我们要从多张表中读取数据时,往往需要用到连接查询。连接查询通过两张表中符合连接关系的字段来建立两张表的关联,通常包括内连接、左外连接、右外连接和全连接。内连接会保留两张表中共有的那部分记录,因此最后产生的连接表记录数最少;全连接会保留两张表中所有的记录,因此最后产生的连接表记录数最多;而左外连接会保留左表的全部记录,右外连接会保留右表的全部记录,因此最后产生的连接表记录数处于内连接...
使用内连接对两张结构相同的表进行比较
--对 表changebeforechangeafter重命名为a,b,查找a b,对两张表进行对比SELECT a.id a,a.name a,b.id b,b.name bFROM changebefore ainner joinchangeafter bon a.id = b.id;  create table changebefore (idnumber(4),name varchar2(...
Mybatis多表关联内连接和左连接结果不一致
小试SSM框架遇到个问题,如下:使用的是mysql数据库,三张表如下:user_t 用户表,u_grade 权限表(user_t和u_grade是多对多关系,只是为了测试多对多级联而已),u_g_mpping 关联映射表数据如下:   项目中UserMapper.xml配置如下:<resultMap id="BaseUser_Grade" type="org.ssm.entity.User"...
mysql 求一个字段中出现几次以上的数据
select tag, count(tag) from user_main_tag group by tag having count(tag) > 1000 以上sql的意思是求tag字段中相同数据出现1000次以上的数据。
Mysql中的关联查询(内连接,外连接,自连接)
在使用数据库查询语句时,单表的查询有时候不能满足项目的业务需求,在项目开发过程中,有很多需求都是要涉及到多表的连接查询,总结一下mysql中的多表关联查询 一,内连接查询 是指所有查询出的结果都是能够在连接的表中有对应记录的。 以t_employee(员工表)和t_dept(部门表)为例: t_employee表中的记录如下:dept代表该员工所在的部门 t_dept表中记录
mysql如何根据select结果进行二次连接查询
mysql如何根据select结果进行二次连接查询 sql代码 select a.*,b.* from( 查询结果1 )a left join database_table b on a.loanNum = b.loanNum 学习Java的同学注意了!!! 学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Java学习交流群,群号码:543120397 我们一起学Java
查询表中某一列出现2次以上的数据
需求:查询表中车牌号出现2次以上的车辆信息 SQL语句: SELECT * FROM table1 A LEFT JOIN table2 B ON A.CAR_ID= B.CAR_ID where SUBSTR(A.CHE_PAI_HAO,1,8) in ( SELECT SUBSTR(A.CHE_PAI_HAO,1,8) FROM table1 A LE...
mySQL内连接和外链接(SQL的四种连接)以及Join ON 和Where区别
说道四种连接,就不得不提关于他们在指令操作上的区别 这四种连接都是为了把两个表合成一个表,这两个表呢,其中至少应该有一列的数据属性是相同的,在下面的两个表中,列属性包含id,size,name。那么这两个表共有属性的列是size,那么久针对这一列的属性把两个表合并的操作就是连接 表1:tab1 id size 1 10 2 20 3 30 表2:tab...
图解MySQL 内连接、外连接、左连接、右连接、全连接……太多了
用两个表(a_table、b_table),关联字段a_table.a_id和b_table.b_id来演示一下MySQL的内连接、外连接( 左(外)连接、右(外)连接、全(外)连接)。 MySQL版本:Server version: 5.6.31 MySQL Community Server (GPL) 数据库表:a_table、b_table 主题:内连接、左连接(左外连
MySQL之内连接、外连接的含义和具体使用
1 简介 在实际开发中,需要根据实体的内容设计数据表,实体间会有各种关联关系。所以根据实体设计的数据表之间也存在着各种关联关系,MySQL中数据表的关联关系有三种。 2 关联关系 2.1 多对一 多对一是数据表中最常见的一种关联关系。例如部门和员工之间的关系,一个部门可以有多个员工,而一个员工不能属于多个部门,也就是说部门表中的一行在员工表中可以有许多匹配行,但员工表中的一行在部门表中只能有一个匹...
【Java面试题】之MySql相关(内连接、外连接)
先看看内连接和外连接的区别,下面的图可以直观的展现两者的区别 on 和 where 的区别: on后面的是连接条件,代表两个表建立关系所遵循的规则 where后面的可以看作是筛选条件,是对最终结果集进行过滤所遵循的规则 注意: Select A.name,B.name from A inner join B on A.id=B.id和 Select
多表查询,内连接(隐式、显示),外连接(左外、右外、基础表)
from子句进行多表查询 例如:查询分数信息,显示玩家昵称、游戏名称和分数 select user_name as '昵称', gname as '游戏名称', score as '分数' from users,games,scores where users.user_qq=scores.user_qq and games.gno=scores.gno
mysql同一张表 查询出来的数据同时进行更新
update t_notice set addUser="李四" where id in (select id from (select * from t_notice ORDER BY RAND() LIMIT 3) as a);
MYSQL select内部、外部、等值、不等值连接查询
内部连接查询  →在on 后面的字段进行比较,查询条件的交集            表名A inner join 表名B on  条件 A.num=B.num外部连接查询        分  左外部连接 left out join    右外部连接 right out join        //"out可忽略不写" 左外部连接查询,已左边的表格为基准,进行查询如:            表名 A...
MySQL高级查询——连接查询实例详解(内外自然连接)
前言 我们使用SQL查询不能只使用很简单、最基础的SELECT语句查询。如果想从多个表查询比较复杂的信息,就会使用高级查询实现。常见的高级查询包括多表连接查询、内连接查询、外连接查询与组合查询等,今天我们先来学习最常用、面试也很容易被问到的连接查询。 我们今天以一个简单的学生信息表(学生ID、学生姓名、学生性别)与一个学生成绩表(学生ID、学生成绩、成绩等级)作演示: stude
【mysql】mysql的内连接和外连接小例子
解释名词: 1、内连接(自然连接): 只有两个表相匹配的行才能在结果集中出现 2、外连接: 包括 (1)左外连接(左边的表不加限制) (2)右外连接(右边的表不加限制) (3)全外连接(左右两表都不加限制) 3、创建student、score表如下                                            (student表)
浅谈MySQL连接查询与外键
连接查询是同时查询多张表,通过多张表之间的关系得到最终的结果。连接查询又分成内连接、外链接和自然连接。内连接:从左表中取出每一条记录,去右表中与所有的记录进行匹配;匹配必须是某个条件在左表中与右表中相同最终才会保留结果,否则不保留。 注意内连接可以没有on之后的条件,此时查询的结果是笛卡尔积。外连接:以某张表为主表,取出主表中的所有记录,然后每一条记录都与另外一张表进行连接。主表中的结果将全部
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 微信2次开发教程 次元产品经理基础