none
求 sql 数据查询语 RRS feed

  • 问题

  •  

     

     

    表a

       ID    |    name    |    pageurl
        1             xia            asd
        2             wei           asd
        3             liu             ooo

    表b

        ID    |    name    |    pageurl
         1            tt                 trtrt
         2            rer               asd
         3           qwq              asd

    我要查出在表a中的数据, 条件是 表a的pageurl字段中的数据,在表b中出现过的

      不要用 select * from a where pageurl in (select pageurl from b)

     这样写也是有错的: select * from  a, b where a.PageUrl = b.PageUrl  这样查出来总是多重复两条

      ID    |    name    |    pageurl
        1             xia            asd
        2             wei           asd
        1             xia            asd
        2             wei           asd

     

    谢谢各位了!

     

     

     

     

     

    • 已移动 Raymond Tang 2010年9月8日 8:22 (发件人:.NET Framework 一般性问题讨论区)
    2010年9月7日 5:11

答案

全部回复

  • 你好

    很像很難實現. 因為他們都可能會有不同的ID, 所以如果要包含 ID 這個FIELD 應該很難不重複的

    可以用STORED PROCEDURE 嗎?

    還是需要一句SQL 來完成

    或者可以嘗試以下 SQL

    select  name    ,    pageurl  from a where pageurl in (select DISTINCT pageurl from b)

    UNION

    select name    ,    pageurl  from b where pageurl in (select DISTINCT pageurl from a)

    Please correct me if my concept is wrong


    Chi
    2010年9月7日 6:07
  • 尝试这个:

    select * from  a, b where a.PageUrl = b.PageUrl 

    group by a.Id, a.name, a.pageurl

    • 已标记为答案 xiawei_hi 2010年9月8日 6:54
    2010年9月8日 2:57