有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java将另一个表中的列添加到现有SQL/query语句中

目前,我在java代码中运行了一个查询,它只显示列的简单网格输出,以及这些特定字段的相应数据。我正在读两个表,它们都有相同的列名。我只需要向该网格添加一列,但字段名位于不同的表中。如何将其添加到现有查询中

这是我当前在Java中执行的查询:

    SELECT  TRNSP_EQP_EIN, TRNSP_EQP_ID, PRE_EQP_ID, EQP_GRP, AAR_CT_C,
AAR_MCHDSG_C,BLD_D, REBLD_D
FROM  EQ.TE_TRNSP_EQPACTV  A
WHERE TRNSP_EQP_ID = ‘BNSF0000000123’
UNION
SELECT TRNSP_EQP_EIN, TRNSP_EQP_ID, PRE_EQP_ID, EQP_GRP, AAR_CT_C,
AAR_MCHDSG_C,BLD_D, REBLD_D
FROM  EQ.TE_TRNSP_EQPHIST  A
WHERE A.TRNSP_EQP_ID = ‘ABC0123’

ORDER BY TRNSP_EQP_EFF_TS
WITH UR

下面是我试图添加到现有SQL的网格中的信息

表:EQ.TE_LOCO_EQP

字段:DEL_RSN_CD


共 (1) 个答案

  1. # 1 楼答案

    您需要向我们提供完整的EQ.TE_LOCO_EQP字段列表才能完整回答这个问题,但我认为您可以使用我在下面提供的内容进行管理。用与连接相关的字段替换方括号([])

    我同意@Snowman的观点,你可以很容易地研究这个

    SELECT
        *
    FROM
    (
        SELECT
            TRNSP_EQP_EIN
            ,TRNSP_EQP_ID
            ,PRE_EQP_ID
            ,EQP_GRP
            ,AAR_CT_C
            ,AAR_MCHDSG_C
            ,BLD_D
            ,REBLD_D
        FROM
            EQ.TE_TRNSP_EQPACTV  A
        WHERE 
            TRNSP_EQP_ID = ‘BNSF0000000123’
        UNION
        SELECT
            TRNSP_EQP_EIN
            ,TRNSP_EQP_ID
            ,PRE_EQP_ID
            ,EQP_GRP
            ,AAR_CT_C
            ,AAR_MCHDSG_C
            ,BLD_D
            ,REBLD_D
        FROM 
            EQ.TE_TRNSP_EQPHIST  B
        WHERE
            A.TRNSP_EQP_ID = ‘ABC0123’
    
        ORDER BY
            TRNSP_EQP_EFF_TS
        WITH UR /* No idea what this is? */
    ) X
    LEFT JOIN
        EQ.TE_LOCO_EQP Y
    ON 
        X.[PRIMARY_KEY] = Y.[EQUIVELANT_FOREIGN_KEY]