[英]Help with complex SQL query (a lot of JOINs?)
此查询涉及两个数据库和4个表。 第一个数据库(PhoneBills)包含第一个表(CallDetails),其中包含以下列:
这里感兴趣的列是[From]和[To]。
在第二个数据库(rtc - 这是一个Lync持久性数据DB)中,有三个感兴趣的表:
我老实说不知道ResourceDirectory定义了什么,我猜测用户名匹配的电话号码可以改变,目录跟踪那些时间。 出于简化的目的,我暂时忽略这一部分。
我想要实现的是从资源获取用户名,因为我可以在ResourcePhone中找到与我的电话号码匹配的内容。
这不行吗?
SELECT Username
FROM Resource R
JOIN ResourcePhone RP on R.ResourceID = RP.ResourceID
WHERE RP.phonenumber = '1111111111'
没有测试过。 我今天早上没喝咖啡。 你被警告过了。
select
pb.Time,
pb.From, r1.Username as FromName,
pb.To, r2.Username as ToName,
pb.Cost, pb.Length
from PhoneBills pb
inner join ResourcePhone rpfr on rpfr.PhoneNumber = pb.From
inner join ResourcePhone rpto on rpto.PhoneNumber = pb.To
inner join Resource r1 on r1.ResourceID = rpfr.ResourceID
inner join Resource r2 on r2.ResourceID = rpto.ResourceID
将PhoneBills加入ResourcePhone以访问特定电话号码的ResourceID。 然后将该ResourceID加入表Resource以访问用户名。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.