SQL / Teradata查询 - 使用多个内部联接时按字段筛选

时间:2014-04-15 15:01:49

标签: sql select teradata

我需要查询我的数据库并将其恢复:

| Policy Num | Coverage Code |

我当前的查询返回2014年的所有内容(即每个索赔号的一行及附加的覆盖码)

  

选择     SCHEMA.TABLE.POLICY_NUMBER,     P_FAR_BI_VW.V_CLAIM_SERVICE_TYP_DIM.COVERAGE_TYP_CDE

     

     

SCHEMA.TABLE

     

INNER JOIN SCHEMA.TABLE ON(SCHEMA.TABLE.POLICY_ID = SCHEMA.TABLE.POLICY_ID)

     

INNER JOIN SCHEMA.TABLE ON(SCHEMA.TABLE.SERVICE_TYPE_ID = SCHEMA.TABLE.SERVICE_TYPE_ID)

     

INNER JOIN SCHEMA.TABLE ON(SCHEMA.TABLE.FISCAL_PERIOD_ID = SCHEMA.TABLE.FISCAL_PERIOD_ID AND SCHEMA.TABLE.YEAR_NUM = 2014)

我尝试了几种不同的查询方式,但似乎无法让它发挥作用。我试过了:

  

选择     不同(SCHEMA.TABLE.POLICY_NUMBER),     SCHEMA.TABLE.COVERAGE_TYP_CDE

     

内部联接

     

分组     SCHEMA.TABLE.COVERAGE_TYP_CDE

等各种想法。我得到的错误是:Selected non-aggregate values must be part of the associated group

我知道必须离开

1 个答案:

答案 0 :(得分:1)

您的所选商品必须全部在您的论坛中

SELECT distinct(SCHEMA.TABLE.POLICY_NUMBER)
     , SCHEMA.TABLE.COVERAGE_TYP_CDE

/* INNER JOINS */

GROUP BY  SCHEMA.TABLE.POLICY_NUMBER
       ,  SCHEMA.TABLE.COVERAGE_TYP_CDE;