比较行两个表

时间:2016-09-15 11:24:31

标签: sql-server

我想比较一个表中的行值和另一个表中的行值。第一个表的结构是:

Structure of table

另一个表比第一个表更复杂,结构相同但行数是百万行,顺便说一下有60.000行。

我需要按biling_profiles对这两个表进行比较,以便了解价格,但会在列中转换结算资料。使用左外连接很容易完成,因为大约6或7 billing_profiles。接下来我需要的是,如果另一个表没有值(例如,第一个表有行(目标201425,成本2,624)而另一个没有,那么我从右到左修剪了一个字符然后搜索(目的地 - 20142)。如果没有再次结果我再次重复修剪从右到左(目的地 - 2014),当我找到相同的目的地,然后显示在表中)

那么,如何解决?

1 个答案:

答案 0 :(得分:0)

尝试

SELECT DISTINCT A.Id
FROM
    table1 A
    INNER JOIN table 2B
        ON A.Id = B.Id AND A.biling_profiles = B.biling_profiles

    select t1.biling_profiles,t2.biling_profiles
    from table1 t1
    inner join table2 t2 on
    t1.id= t2.id
    where t1.biling_profiles= @biling_profiles