SQL Server 2008-将旧的SQL联接(* =和= *)更改为新 [英] sql server 2008 - change old sql joins (*= and =*) to new

查看:63
本文介绍了SQL Server 2008-将旧的SQL联接(* =和= *)更改为新的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

谁能帮助验证以下查询以在slq server 2008中运行,

SELECT A.OPTTYPE,A.OPTDESC,

ACCT = B.ACCTDESC为空时的情况,然后G.ACCTDESC ELSE B.ACCTDESC结束,

PROJ = ISNULL(C.PROJ,''NA''),

DEPT = ISNULL(D.DEPT,''NA''),

COSTCTR = ISNULL(E.COSTCTR,``NA''),

WHSEDESC = ISNULL(F.WHSEDESC,''NA''),

A.WHSEID AS WHSEID

来自INV10221 A,ACT00001_P B,ACT00004_P C,ACT00003_P D,ACT00002_P E,INV10111 F,ACT10001 G

A.ACCT * = B.ACCT在哪里

AND G.CACCT = * A.ACCT

AND A.PROJ * = C.PROJ

AND A.DEPT * = D.DEPT

和A.COSTCTR * = E.COSTCTR

AND A.WHSEID * = F.WHSEID

ORDER BY A.OPTDESC


-------------------------------------------------- ------------------------------

can anyone help to conert below query to run in slq server 2008,

SELECT A.OPTTYPE ,A.OPTDESC ,

ACCT = CASE WHEN B.ACCTDESC IS NULL THEN G.ACCTDESC ELSE B.ACCTDESC END,

PROJ = ISNULL(C.PROJ,''NA''),

DEPT = ISNULL(D.DEPT,''NA''),

COSTCTR = ISNULL(E.COSTCTR, ''NA''),

WHSEDESC = ISNULL(F.WHSEDESC,''NA''),

A.WHSEID AS WHSEID

FROM INV10221 A, ACT00001_P B, ACT00004_P C, ACT00003_P D, ACT00002_P E , INV10111 F, ACT10001 G

WHERE A.ACCT *= B.ACCT

AND G.CACCT=* A.ACCT

AND A.PROJ *= C.PROJ

AND A.DEPT *= D.DEPT

and A.COSTCTR *= E.COSTCTR

AND A.WHSEID *= F.WHSEID

ORDER BY A.OPTDESC


--------------------------------------------------------------------------------

推荐答案

嘿,

试试这个
hey,

try this
SELECT A.OPTTYPE ,A.OPTDESC ,

ACCT = CASE WHEN B.ACCTDESC IS NULL THEN G.ACCTDESC ELSE B.ACCTDESC END,

PROJ = ISNULL(C.PROJ,'NA'),

DEPT = ISNULL(D.DEPT,'NA'),

COSTCTR = ISNULL(E.COSTCTR, 'NA'),

WHSEDESC = ISNULL(F.WHSEDESC,'NA'),

A.WHSEID AS WHSEID

FROM INV10221  A right outer join ACT00001_P B on A.ACCT = B.ACCT
Right outer join ACT10001 G on G.CACCT= A.ACCT
Left outer join ACT00004_P C on A.PROJ = C.PROJ left outer join  ACT00003_P D
on A.DEPT = D.DEPT left outer join ACT00002_P E on A.COSTCTR = E.COSTCTR
left outer join INV10111 F on A.WHSEID = F.WHSEID
  ORDER BY A.OPTDESC



希望对您有帮助

祝你好运
快乐编码:)



Hope it will help u

Best Luck
Happy Coding :)


这篇关于SQL Server 2008-将旧的SQL联接(* =和= *)更改为新的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆