小编Don*_*ald的帖子

连接中的嵌套选择:无法绑定多部分标识符

这是一个讨厌的。我试图从嵌套在连接中的内部选择引用外部查询中的表。我需要根据外部 sales_contract 表中的值过滤这些内部查询,但是当我尝试在内部查询中引用这些列中的任何列时,我收到“无法绑定多部分标识符”错误:

sc.commission_range_start
sc.commission_range_end
sc.commission_duration
sc.signup_range_start
sc.signup_range_end
Run Code Online (Sandbox Code Playgroud)

如何重构此查询?

with account_hierarchy(account_major, account_minor) as
(
    select
        gp.account_major as account_major,
        gp.account_major as account_minor
    from
        group_accounts gp with(nolock)
        left join group_accounts gc with(nolock) on gp.account_major = gc.account_minor
    where
        gc.account_major is null
    group by
        gp.account_major

    union all

    select 
        up.account_major, down.account_minor
    from 
        group_accounts as down with(nolock)
        join account_hierarchy as up on up.account_minor = down.account_major
)
select
    sa.first_name as 'AgentFirstName',
    sa.last_name as 'AgentLastName',
    sc.threshold as 'CommissionUsageThreshold',
    sc.commission_amount as 'CommissionAmount',
    sc.commission_percentage as 'CommissionPercentage',
    parent.primary_phone as 'AccountNumber',
    child.primary_phone …
Run Code Online (Sandbox Code Playgroud)

sql sql-server select nested join

5
推荐指数
1
解决办法
1769
查看次数

标签 统计

join ×1

nested ×1

select ×1

sql ×1

sql-server ×1