我构建了个 视图,
在 SQL server 2008 运行的很好
但是,在2000上面,昨晚上运行的还可以,没有发现问题
今天早上,后半部分字段(好像是从 m.以后),全部取不到数据了。如何改进啊?
附件:SET ANSI_NULLS ON
GOSET QUOTED_IDENTIFIER ON
GOCREATE  View [dbo].[v_price_type_w] asSELECT     t.id, t.oid, t.leib, t.pinm, t.guig, t.caiz, t.chanc, t.guapj, t.decldate, t.uid, t.reports, t.freshdate, t.yesterday, t.week, t.month, t.anchor, t.cityid, t.source, m.CompanyName, 
                      m.shortName, m.ProvinceName, m.ComE_mail, m.CompanyCodeA, m.CompanyCode, m.CompanyCodeB, m.Mobile, m.UserTypes, m.city, m.Pid, m.Cid, c.address, 
                      cl.zcode, m.LinkMan
FROM         dbo.cityprice_tabl AS t LEFT OUTER JOIN
                      dbo.MemberInfo AS m ON t.uid = m.UID LEFT OUTER JOIN
                      dbo.creditMemberAddress AS c ON c.UID = m.UID LEFT OUTER JOIN
                      dbo.C_List AS cl ON cl.Id = m.CidGO

解决方案 »

  1.   

    你用的是left join ,你检查一下右边的表是不是没有数据了,你的 视图是没问题的
      

  2.   

    单独把这个语句执行下看看
    SELECT     t.id, t.oid, t.leib, t.pinm, t.guig, t.caiz, t.chanc, t.guapj, t.decldate, t.uid, t.reports, t.freshdate, t.yesterday, t.week, t.month, t.anchor, t.cityid, t.source, m.CompanyName, 
                          m.shortName, m.ProvinceName, m.ComE_mail, m.CompanyCodeA, m.CompanyCode, m.CompanyCodeB, m.Mobile, m.UserTypes, m.city, m.Pid, m.Cid, c.address, 
                          cl.zcode, m.LinkMan
    FROM         dbo.cityprice_tabl AS t LEFT OUTER JOIN
                          dbo.MemberInfo AS m ON t.uid = m.UID LEFT OUTER JOIN
                          dbo.creditMemberAddress AS c ON c.UID = m.UID LEFT OUTER JOIN
                          dbo.C_List AS cl ON cl.Id = m.Cid
      

  3.   

    表结构,没有动过我又从 正在运行的SQL server 2008下面,复制这段好的代码,
    到2000下面运行,还是不行。m.后面的字段,全部取不到数据,为空值
      

  4.   

    感谢 wufeng4552 和 hdhai9451 两位高工!