小编Jes*_*ess的帖子

在标量子查询中创建别名 - SQLServer

我在 SAS 中这样做,但是原则应该适用于 sqlserver。我有一个表格,它是帐号完全连接的结果,所以它看起来像这样:

abc_accno  xyz_accno
11111      .
22222      22222
.          66666
33333      33333
44444      44444
.          55555
Run Code Online (Sandbox Code Playgroud)

我的最终目标是有一个看起来像这样的表:

count_abc_accno  count_xyz_accno  matched_pairs
4                5                3
Run Code Online (Sandbox Code Playgroud)

所以我的查询是这样的:

create table matched_pairs as
select
     count(abc_accno) as Count_abc_AccNo
    ,count(xyz_accno) as Count_xyz_AccNo
    ,(select count(abc_accno) as matched_pairs 
        from t1
        where abc_accno = xyz_accno)
from t1
;
Run Code Online (Sandbox Code Playgroud)

我最终得到的是这样的:

count_abc_accno  count_xyz_accno  _randomname
4                5                3
Run Code Online (Sandbox Code Playgroud)

我认为可能有一种更优雅的方法来做到这一点,但我们使用我们拥有的工具(和知识)。我希望匹配对变量表示匹配对,但我无法弄清楚如何从系统生成的名称中删除它。

这样做的最佳方法是什么?有没有比我正在尝试的更优雅的解决方案?(似乎总有……总有一天)

sql sql-server scalar alias subquery

2
推荐指数
1
解决办法
84
查看次数

标签 统计

alias ×1

scalar ×1

sql ×1

sql-server ×1

subquery ×1