`

数据表连接

    博客分类:
  • sql
 
阅读更多

有2个表 
  table1 
  user_id     user_name     user_pss  
      1          aaa            a  
      2          bbb            b  
      3          ccc            c  
   
  table2 
  user_id     user_power  
      1                   111000  
      2                   000111  
  使用sql语句查询
  正常状态(内联接):  
        select  table1.user_id,   table1.user_name,   table2.user_power  
    from    table1,table2  where   table1.user_id = table2.user_id  (简单方式)

或者  select  table1.user_id,   table1.user_name,   table2.user_power  
    from    table1 ( inner) join table2  on   table1.user_id = table2.user_id

  但是这样检索出来的数据只有2条:  
  user_id     user_name       user_power  
      1           aaa           000111  
      2           bbb           111000  
  因为第3条数据在table2中没有关联.  
   
  这时使用左连接查询﹕  
  select  table1.user_id,table1.user_name,  table2.user_power  
  from    table1,table2  
  where   table1.user_id (+)=  table2.user_id
  或者是   left join on  table1.user_id = table2.user_id
  多个表   left join on  table1.user_id = table2.user_id
          left join on  table1.user_id = table3.user_id
  就可以得到如下的结果
  user_id     user_name       user_power  
      1           aaa           000111  
      2           bbb           111000  
      3           ccc           (null)  
  說明﹐左或右连接查询实际上是指定以那个标的数据为准﹐而默认(不指定左或右连接)是以两个表中都存在关联列的数据为准。
完全联接:返回左右联接的和集 select  table1.user_id,table1.user_name,  table2.user_power  from table1 full (outer) join table2 on table1.user_id = table2.user_id;

交叉联接:没有where子句的交叉联接将产生联接所涉及表的笛卡尔积。第一个表的行数乘以第二个表的行数等于 笛卡尔积结果集的大小。select  table1.user_id,table1.user_name,  table2.user_power  from table1 cross join table2(不带where条件)

如果交叉联接中带where的条件则和内联接一样。

 

分享到:
评论

相关推荐

    EXCEL数据表连接器

    网友推荐的一个小软件,可以象在数据库中那样连接EXCEL数据表,很实用,谢谢.

    水晶易表连接数据的实际例子

    水晶易表连接数据的实际例子,主要是以XML格式连接网站的

    数据结构 用顺序表和链表实现表的连接

    本主题将深入探讨两种常用的数据结构——顺序表和链表,并展示如何使用C语言来实现这两种数据结构来连接表。顺序表和链表各有优缺点,理解和掌握它们对于优化算法和提高程序效率至关重要。 首先,我们来讨论顺序表...

    C# 连接MySql数据库,显示数据表

    在C#编程中,连接MySQL数据库并显示数据表是一个常见的任务,尤其对于初学者来说,了解这个过程至关重要。本文将详细讲解如何使用C#连接MySQL数据库,并将数据映射到界面上显示。 首先,我们需要安装必要的库。在C#...

    关于Oracle多表连接,提高效率,性能优化操作

    执行路径:ORACLE的这个功能大大地提高了SQL的执行性能并节省了内存的使用:我们发现,单表数据的统计比多表统计的速度完全是两个概念.单表统计可能只要0.02秒,但是2张表联合统计就可能要几十表了. 这是因为ORACLE只对...

    在SAP前台用TCODE:SE16H实现表连接查询

    "SAP SE16H 表连接查询详解" 在 SAP 系统中,SE16H 是一个功能强大的工具,能够实现复杂的表连接查询。今天,我们将详细介绍如何使用 SE16H 实现表连接查询,并提供一个实际的示例。 SE16H 介绍 SE16H 是 SAP ...

    数据库表合并场景实践测试SQL

    1. 数据表连接(JOIN):这是最基础的表合并方式,包括内连接(INNER JOIN)、左连接(LEFT JOIN)、右连接(RIGHT JOIN)和全连接(FULL JOIN)。内连接返回两个表中匹配的记录,左连接返回左表的所有记录及与之...

    SQL的数据查询功能之三---多表连接查询

    SQL 的数据查询功能之三 --- 多表连接查询 SQL 的数据查询功能之三 --- 多表连接查询是数据库管理系统中的一种重要功能,它允许用户从多个表中检索数据,并将其组合成一个结果集。多表连接查询是指在一个查询语句中...

    面向Flink的多表连接计算性能优化算法

    面向Flink的多表连接计算性能优化算法是基于分布式计算引擎Flink的研究方向,旨在提高Flink多表连接的性能,以加速大规模数据分析处理的速度。该算法的提出是为了解决直接将现有的多表连接优化算法应用到Flink上所...

    VBA示例之 求人不如自已动手 移除Excel工作表中的外部数据连接

    对于移除外部数据连接的任务,我们可以编写一段VBA代码,遍历工作簿中的所有工作表,找到并断开外部链接。 以下是一个简单的VBA代码示例,用于实现这个功能: ```vba Sub RemoveExternalDataConnections() Dim wb...

    Oracle表连接的具体讲解

    在 Oracle 中,表连接是指将两个或多个表中的数据结合起来,以满足查询的需求。表连接可以分为三种:内连接、外连接和自连接。 一、 内连接(Inner Join) 内连接是一种最基本的表连接方式,它返回满足连接条件的...

    面向多表数据连接投影和连接顺序的优化方法.docx

    在大数据处理领域,面对多表数据连接投影和连接顺序的优化是提高性能的关键问题。本文主要探讨了在分布式环境下,如何有效地优化多表连接操作,以降低执行成本和I/O代价,尤其关注了连接顺序和投影列的选择。 连接...

    springboot-AOP实现多数据源动态切换(Druid连接池)

    Druid连接池提供了一个内置的监控页面,通过监控配置可以让开发者获得数据库连接池、SQL监控、慢查询等性能指标,进而优化数据源的使用。 综上所述,通过上述关键知识点的实施,可以在Spring Boot应用中成功配置和...

    天然气改装汽车CNG ECU 部分车型连接原车电脑针脚数据表

    天然气改装汽车CNG ECU 部分车型连接原车电脑针脚数据表 天然气汽车改装ECU系统是指安装在汽车上的燃气供应系统,可以将燃气供应到汽车引擎,以减少污染和降低排放。ECU(Electronic Control Unit,电子控制单元)...

    C#操作Mysql创建数据库,数据表,增、删、改数据

    本教程将详细介绍如何使用C#与Mysql进行交互,包括创建数据库、数据表以及执行基本的CRUD(Create、Read、Update、Delete)操作。 首先,我们需要在C#项目中引入Mysql的数据提供者——`MySql.Data.dll`。这个库允许...

    SQL Server中关于临时表概念及创建和插入数据等问题

    SQL Server 中的临时表概念、创建和插入数据等问题 SQL Server 中的临时表...SQL Server 中的临时表概念和创建、插入数据等问题需要注意临时表的生命周期、连接的状态、事务的提交情况等因素,以避免数据丢失和错误。

    关于数据库连接池和动态数据源的实现

    数据源连接池的基本用法,配置信息,代码案例、 实现数据源的动态切换和案例 数据源连接池的基本用法,配置信息,代码案例、 实现数据源的动态切换和案例 数据源连接池的基本用法,配置信息,代码案例、 实现...

    c#自动创建数据表model类

    1. **数据库连接**:首先,你需要能够连接到包含你要映射的数据表的数据库。这通常通过ADO.NET、Entity Framework或其他ORM(对象关系映射)框架实现,如Dapper或Npgsql。连接字符串是关键,它包含了数据库的地址、...

    Gbase 8s查询之连接查询

    左外连接返回左表中的所有行和右表中的匹配行,右外连接返回右表中的所有行和左表中的匹配行,完全外连接返回两个表中的所有行。 自连接是指一个表与自身进行链接操作,这实际上是一种特殊形式的内连接。例如,我们...

Global site tag (gtag.js) - Google Analytics