Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 在同一分行同时拥有账户和贷款的客户是谁?_Mysql_Sql - Fatal编程技术网

Mysql 在同一分行同时拥有账户和贷款的客户是谁?

Mysql 在同一分行同时拥有账户和贷款的客户是谁?,mysql,sql,Mysql,Sql,我有这些桌子: 我想知道:在同一家分行同时拥有账户和贷款的客户是谁 我尝试了以下两段代码: select distinct depositor.customer_name, account.branch_name from (borrower inner join loan on borrower.loan_number=loan.loan_number) inner join ( depositor inner join account on depositor.account_numb

我有这些桌子:

我想知道:在同一家分行同时拥有账户和贷款的客户是谁

我尝试了以下两段代码:

select distinct depositor.customer_name, account.branch_name
from (borrower inner join loan on borrower.loan_number=loan.loan_number) 
inner join 
( depositor inner join account on depositor.account_number=account.account_number ) 
on (account.branch_name=loan.branch_name and borrower.customer_name=depostior.customer_name);
这是:

select account.branch_name, depositor.customer branch_name
from account, depostior
where depositor.customer_name, account.branch_name
in ( borrower inner join loan on borrower.loan_number=loan.loan_number );
在最近的一篇文章中,我尝试了嵌套查询,但没有成功

那么我该如何解决这个问题呢? 谢谢


用内部联接语法重写

SELECT DISTINCT d.customer_name, a.branch_name
FROM depositor d
INNER JOIN account a ON d.account_number = a.account_number
INNER JOIN borrower b ON d.customer_name = b.customer_name
INNER JOIN loan l ON b.loan_number = l.loan_number
       AND l.branch_name = a.branch_name
SELECT DISTINCT
        d.customer_name, a.branch_name
    FROM
        depositor d
            INNER JOIN
        account a ON d.account_number = a.account_number
            INNER JOIN
        borrower b ON d.customer_name = b.customer_name
            INNER JOIN
        loan l ON b.loan_number = l.loan_number
            AND l.branch_name = a.branch_name

用内部联接语法重写

SELECT DISTINCT d.customer_name, a.branch_name
FROM depositor d
INNER JOIN account a ON d.account_number = a.account_number
INNER JOIN borrower b ON d.customer_name = b.customer_name
INNER JOIN loan l ON b.loan_number = l.loan_number
       AND l.branch_name = a.branch_name
SELECT DISTINCT
        d.customer_name, a.branch_name
    FROM
        depositor d
            INNER JOIN
        account a ON d.account_number = a.account_number
            INNER JOIN
        borrower b ON d.customer_name = b.customer_name
            INNER JOIN
        loan l ON b.loan_number = l.loan_number
            AND l.branch_name = a.branch_name

我们倾向于不鼓励使用逗号连接,并使用内部连接语法给出了另一个答案。更好?无需发布多个答案,只需通过编辑扩展您的答案