依靠2列

时间:2013-09-20 13:54:02

标签: sql-server-2008

我试图从两个不同数据库中的不同表中获取两列内的行数。一些事情:

    SELECT i.Id, i.Form, h.Form, COUNT(*) AS number
    FROM database1.table1 i

            inner join database2.table2 h
            ON h.table2 = i.table1

        GROUP BY i.Id, i.Form, h.Form
        HAVING COUNT (*) > 1

基本上我需要比较重复的两列。

2 个答案:

答案 0 :(得分:1)

首先,你需要在id上加入表,正如你在这里写的那样是

    ON table2.table2 = table1.table1

所以代替:

    ON h.table2 = i.table1

你想要的东西:

    ON h.id = i.id

假设id与同一个obect(即人,记录等)有关。

所以要回答你的问题,你需要写一些类似的东西:

    SELECT i.id, i.Form, h.Form
    FROM database1.table1 i
        INNER JOIN database2.table2 h
        ON h.id = i.id
        AND i.Form = h.Form

希望这有帮助!

答案 1 :(得分:0)

感谢您的帮助,我提出了:

SELECT i.Id, i.Form, h.Form
FROM database1.table1 i

        inner join database2.table2 h
        ON h.form = i.form

    GROUP BY i.Id, i.Form, h.Form code

现在我只需要在查询中添加行数...再次感谢!