Sql 如何在内部查询条件中使用外部查询列

Sql 如何在内部查询条件中使用外部查询列,sql,sql-server,database,Sql,Sql Server,Database,我想在select语句中使用subquery,但我想将列数据传递给subquery,以便它可以筛选正在处理的行的数据。我们如何做到这一点或这是否可能 select [SRP Code], [Master Code], [Product Desc], [Pack Desc],[Information], [Store], case when ([SRP Code] <> [Master Code]) then isnull([38],0) + (select (e.st

我想在select语句中使用subquery,但我想将列数据传递给subquery,以便它可以筛选正在处理的行的数据。我们如何做到这一点或这是否可能

select 
[SRP Code], [Master Code],  [Product Desc], [Pack Desc],[Information],  [Store],

case when ([SRP Code] <> [Master Code])
then
    isnull([38],0) + (select (e.stock/er.unit) as 'Stock' from erp_stock e join  
    erpcustomerlinking er on e.productcode = er.mastercode where 

    er.mastercode = [Master Code] <-- here I want the column

    and weekno = 38     group by e.stock,er.unit)
else
    isnull([38],0)
end as [38],[36],[37],[35],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50]

from [dbo].[F91FE39A-F618-40A8-A6F7-C721A379EE76]

where [SRP Code] = 401794
是的,有可能

Create table test(id int, name varchar(20), age int);
create table salary(id int, salary int, testid int);

insert into test values(1,'jitu',12);
insert into test values(2,'kapil',12);                 
insert into test values(3,'ajay',12);
insert into test values(4,'vijay',12);

insert into salary values(1, 200, 1);
insert into salary values(2, 300, 2);
insert into salary values(3, 400, 3);
insert into salary values(4, 500, 4);

select *, (select salary from salary where test.id=testid) as Salary from test
小提琴: