zoukankan      html  css  js  c++  java
  • sql 中多表查询-leetcode : Combine Two Tables

    因为对数据库的内容早都忘得差不多了,所以我的第一感觉是:

    select Person.FirstName, Person.LastName, Address.City from Person, Address where Person.PersonId=Address.PersonId

    结果出错了:

    因为至少这个人是存在的,只是没有她的地址,你不至于搜不到吧, 但是我这种写法是引用两个表,从两个表中获取数据,就是找两者相同的情况下的结果.

    使用join 可以连接两个表:

    join: 如果表中有一个匹配,则返回行,

    select Person.FirstName, person.LastName,Address.City, Address.State from Person join Address on Person.PersonId=Address.PersonId
    

      (因为连个表中属性不同命,也可以不在属性前加 表名)

    left join: 即使右表中没有匹配,也从左表中返回所有的行

    符合要求

    right join: 即使左表中没有匹配,也从右表中返回所有的行

     

  • 相关阅读:
    POJ 1637:Sightseeing tour
    bzoj 3997: [TJOI2015]组合数学
    [CEOI2008]order
    【网络流24题】星际转移问题
    Codeforces Round #460 D. Karen and Cards
    bzoj 3142: [Hnoi2013]数列
    codeforces586B
    codeforces631B
    codeforces548B
    codeforces515B
  • 原文地址:https://www.cnblogs.com/fanhaha/p/7257100.html
Copyright © 2011-2022 走看看