【问题标题】:SQL reverse column value querySQL反向列值查询
【发布时间】:2012-11-01 09:29:25
【问题描述】:

需要一些 Sql 帮助吗?我的 Sql 还没有完全做到这一点。 我有一张桌子

ColA    ColB    ColC
A       B       101
B       B       102
C       B       102
B       A       108

我需要能够识别 ColC 中的值,其中在 Col A 和 Col B 中具有相同条目的行(但相反),即 Col B = Col A。但不像第三行,其中 Col B 对应值具有没有匹配项或第二行,其中 Col A = Col B。

结果集将是

Col A      Col B     Col C
A          B         101
B          A         108

【问题讨论】:

    标签: sql tsql


    【解决方案1】:

    您可以进行自连接 - 即:将表连接到自身...

    select t1.* , t1.ColC-t2.ColC
    from yourtable t1
        inner join yourtable t2
           on t1.colA = t2.colB
           and t1.colB = t2.colA
    where t1.colA <> t1.colB
    

    【讨论】:

    • 感谢 Podiluska,现在我将研究如何获取生成的值并从另一个中减去一个值,其中有一对匹配的相反对。
    • @icecurtain 我已经添加了差异。您可能需要一个ABS
    猜你喜欢
    • 2021-12-22
    • 2020-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多