首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >内部连接的SQL查询

内部连接的SQL查询
EN

Stack Overflow用户
提问于 2014-12-19 11:10:48
回答 3查看 65关注 0票数 0

有三个餐桌主人,正规和客户。

我将把ControlId保存在主用户和普通用户中。我想从客户记录中得到主人的个人资料。

使用下面的查询。我可以从普通的MasterID,但我想要个人资料。

查询

代码语言:javascript
复制
select * from customer where refId='R000003'
    (select ControlId from regular where LicenseId='R000003')

结果

主表

正则表

我的疑问是..。

代码语言:javascript
复制
SELECT        Customer.CustomerId, Regular.LicenseId, Regular.ControlId, 
              Master.FullName, Master.profile
FROM          Customer INNER JOIN
              Regular ON Customer.RefId = Regular.LicenseId INNER JOIN
              Master ON Regular.ControlId = Master.MasterId                            
WHERE        (Customer.RefId = 'R000003') 

但它只显示了规则--我也想要大师唱片.

EN

回答 3

Stack Overflow用户

发布于 2014-12-19 11:20:08

你是这个意思吗?我不确定..。

代码语言:javascript
复制
select regular.ControlId, master.profile
from regular r inner join master m ON (r.controlId = m.masterId)
where regular.LicenseId='R000003'
票数 0
EN

Stack Overflow用户

发布于 2014-12-19 11:20:23

张贴您的数据的图像是没有帮助的。没人会把这个输入进去。粘贴样品。

票数 0
EN

Stack Overflow用户

发布于 2014-12-19 11:31:07

我猜RefIdLicenseId是相互引用的。我认为这是您想要的查询:

代码语言:javascript
复制
select c.*, m.profile
from customer c join
     regular r
     on c.refId = r.LicenseId join
     master m
     on r.controlId = m.MasterId;

我建议你把桌子修好。不同表中的联接键应该有相似的名称,因此您知道它们是对齐的。实际上,我几乎总是将我的连接键命名为"Id",所以这个查询看起来更像:

代码语言:javascript
复制
select c.*, m.profile
from customer c join
     regular r
     on c.CustomerId = r.CustomerId join
     master m
     on r.MasterId = m.MasterId;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27564827

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档