› MySQL 5.5 Community Server
› MySQL 5.6 Community Server
› Percona Configuration Wizard
› XtraBackup 搭建主从复制
Great Sites on MySQL
› Percona
› MySQL Performance Blog
› Severalnines
推荐管理工具
› Sequel Pro
› phpMyAdmin
推荐书目
› MySQL Cookbook
MySQL 相关项目
› MariaDB
› Drizzle
参考文档
› http://mysql-python.sourceforge.net/MySQLdb.html
cnmllll
V2EX  ›  MySQL

关于一条 sql 语句查询 2 张关联的表,求指导

  •  
  •   cnmllll · Jul 4, 2018 · 4773 views
    This topic created in 3048 days ago, the information mentioned may be changed or developed.

    本人 sql 小白。。。

    问题 如下:

    首先要查询 A 表 2 个字段 name tapid

    之后在通过 A 表 tapid 这个字段查询出 B 表 name b1 b2 b3 这三个字段

    B 表的主键 ID 字段和 A 表的 tapid 是关联的,即通过 A 表 tapid 可以找到 B 表 ID 字段

    可不可以通过一条 sql 语句把上面 A,B 表共 6 个字段查询出来?

    8 replies  •  2018-07-09 09:42:23 +08:00
    onlywinnie
    onlywinnie
    Jul 4, 2018
    1
    join 了解一下= =
    vZexc0m
    vZexc0m
    Jul 4, 2018
    2
    SELECT A.name,A.tapid,B.b1,B.b2,B.b3 FROM A INNER JOIN B ON A.tapid = B.id
    GavinJ
    GavinJ
    Jul 4, 2018
    3
    这是最基础的,建议先多看看文档吧。
    shakoon
    shakoon
    Jul 4, 2018
    4
    select a.name, a.tapid, b.name, b.b1, b.b2, b.b3
    from a left join b on a.tapid = b.tapid
    cnmllll
    cnmllll
    OP
    Jul 4, 2018
    5
    不好意思 各位 解决了。。。select a.*,b.* from a,b where a.id=b.id
    moshao6
    moshao6
    Jul 4, 2018
    6
    @cnmllll 你的老师有没有告诉过你, 表关联应该使用那种吗?
    1、from a, b where a.id=b.id
    2、from a left join b on a.id=b.id
    BlueSummer8
    BlueSummer8
    Jul 4, 2018 via Android
    7
    @cnmllll 我觉得这个方法更直观,但一般用 join 多
    wewall
    wewall
    Jul 7, 2018
    8
    @vZexc0m 一条 SQL 里面不建议 from 多个表跟随 join
    vZexc0m
    vZexc0m
    Jul 9, 2018
    9
    @wewall 什么意思?可以解释下吗
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1524 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 06:57 · PVG 14:57 · LAX 22:57 · JFK 01:57
    ♥ Do have faith in what you're doing.