我需要在 SQL Server 中查询数据集,并根据两个子查询之一获得其中一个返回列。哪个子查询的控制来自查询中另一列的值。我正在尝试做的一些基本的伪查询语言:
select col1, col2, col3,
if col3 = 1
(select count(*) from table2 where table2.col1 = table1.col1) as count1
else
(select count(*) from table3 where table3.col1 = table1.col1) as count1
from table1
实现这一目标的最佳方法是什么?