遇见糖糖
2018-05-09 12:35
采纳率: 100%
浏览 3.5k
已采纳

数据库如何单表查询得到两个相关联表的所有数据

图片说明A表有两个字段 id,bID. 其中bID,是b表的主键
B表有两个字段 id,bName.

问现在如何才查训条件中输入bName的时候能将与a相关的结果都带出来,并且只能使用单表查询,不能使用外键

*B表的name,是可以出现重复的数据的

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

7条回答 默认 最新

  • qq_36816643 2018-05-10 01:38
    已采纳

    好久没有写过了,不知道对不对,逻辑应该没问题
    select A.id,A.bID from table A where A.bID = (selsct id from B where bName = 'zhangsan')

    打赏 评论
  • threenewbee 2018-05-09 12:58

    select t1.* t2.* from table t1, table t2 where t1.id = t2.bID

    打赏 评论
  • 恋上45倾斜 2018-05-10 02:12

    select a.*,b.* from a inner join b on a.id=b.id

    打赏 评论
  • onlysanshao 2018-05-10 02:15

    只能使用单表查询?不知道我理解的对不对哈, 我觉得你可以建个视图 create view ab as select ta.id aid,tb.id bid,tb.name bname from b tb left join a ta on tb.id = ta.bid

    打赏 评论
  • onlysanshao 2018-05-10 02:21

    select * from a ta where exists select id from b tb where ta.bid = tb.id and tb.name = '???' 或者这样?

    打赏 评论
  • CCWSSZFJ 2018-05-11 07:17

    完全外连接:select * from a full join b on a.id=b.id

    打赏 评论
  • 华少丶 2018-08-28 10:24

    select A.column1,A.column2, B.columnN ,C.columnN from tableA inner join tableB on tableB.** = tableA.*** inner join tableC on table A.**= tableC.** 

    打赏 评论

相关推荐 更多相似问题