繁体   English   中英

SQL SERVER-如果值存在则更改列值

[英]SQL SERVER - Change column value if value exists

我有以下问题。 想象一下,我从select语句中获得了以下返回表

Column A   Column B
100        aaa
100        bbb
100        ccc
200        ddd
300        eee

所以问题是,如何更改我的SQL Select语句以添加一个新列,该列显示列A具有重复值的次数。 问题是我需要与订单获得一些子关系。

例如,它应该返回如下内容:

  Column A   Column B  Column C
    100        aaa     1
    100        bbb     2
    100        ccc     3
    200        ddd     1
    300        eee     1

非常感谢您的支持!

ROW_NUMBER() OVER (PARTITION BY ColA ORDER BY SomethingElse) as ColC 这样就可以在ColA中为每个“组”提供一个连续的行号。

这是RANK()分析函数的经典用例:

SELECT a, b, RANK() OVER (PARTITION BY a ORDER BY b) AS c
FROM   my_table

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM