一、工作总结: 

  今天工作中遇到了这样一个需求,具体是根据某张表的某一列值得不同,进行不同关联操作。起初自己的想法是采用UNION操作,把两种情况连接起来,但是会出现一个问题,当进行动态传值SQL拼接的时候,只能给最后面加,而不能给两种情况的结果集都动态拼接,导致查询结果和预期不一样。  

自己的SQL语句如下,自己使用UNION进行结果集连接。

SELECT DISTINCT C.TUUSERNA,C.TUCLASID,C.TUUSERID,C.TUEMAIL,C.TUPHONE,C.TUACEMAIL,C.TUACMOBILE,C.TUCOMP,C.TUACTIVE,
                                C.TUENNAME,B.UJPAPARV AS TUUSERNA,A.UJPAPARV AS OFFCCODE,D.TBDTL2 FROM
                                FROM WEBNFLIB.URUSERPF C
                                INNER JOIN WEBNFLIB.URUSOBNOPF B ON B.TUUSERID=C.TUUSERID 
                                INNER JOIN WEBNFLIB.URUSOBNOPF A ON A.TUUSERID=C.TUUSERID 
                                INNER JOIN CDFLIB.CDTABDPF D ON D.TBCODE=A.UJPAPARV 
                                WHERE B.UJPAPARN = 'FWD_FRTP' AND A.UJPAPARN = 'FWD_OFFC' AND C.TUACTIVE=1 AND C.TUCLASID IN('A','B') AND D.TBTYPE='OFFC'
                                UNION
                              SELECT DISTINCT C.TUUSERNA,C.TUCLASID,C.TUUSERID,C.TUEMAIL,C.TUPHONE,C.TUACEMAIL,C.TUACMOBILE,C.TUCOMP,C.TUACTIVE,
                                C.TUENNAME,B.UJPAPARV AS TUUSERNA,A.UJPAPARV AS OFFCCODE,D.TBDTL2 FROM
                                FROM WEBNFLIB.URUSERPF C
                                INNER JOIN WEBNFLIB.URUSOBNOPF B ON B.TUUSERID=C.TUFUSRID 
                                INNER JOIN WEBNFLIB.URUSOBNOPF A ON A.TUUSERID=C.TUFUSRID 
                                INNER JOIN CDFLIB.CDTABDPF D ON D.TBCODE=A.UJPAPARV 
                                WHERE B.UJPAPARN = 'FWD_FRTP' AND A.UJPAPARN = 'FWD_OFFC' AND C.TUACTIVE=1 AND C.TUCLASID IN('A','B') AND D.TBTYPE='OFFC'
View Code

相关文章:

  • 2021-12-08
  • 2021-04-10
  • 2022-01-16
  • 2021-11-21
  • 2022-12-23
  • 2021-08-17
  • 2022-12-23
  • 2021-08-09
猜你喜欢
  • 2021-11-18
  • 2022-12-23
  • 2021-12-22
  • 2021-08-21
  • 2022-03-09
  • 2021-09-22
  • 2021-11-30
相关资源
相似解决方案