【问题标题】:Qlik Sense Syntax in Data Loader ScriptData Loader 脚本中的 Qlik Sense 语法
【发布时间】:2020-03-18 21:59:38
【问题描述】:

如何在数据加载器脚本中使用 Qlik Sense 语法进行此查询?

TABLA_UTIL:
SQL
SELECT "PERIODO", SUM(DEUDAFINAL) as "DEUDAFINAL"
FROM "DL_RG_ANALYTICS"."SH_PROVISION" PRO WHERE ORG='628'
GROUP BY PERIODO

concatenate

SQL
SELECT OL.PERIODO, SUM(ABIERTA/1000000)+ DEUDA/1000000 
FROM "DL_RG_ANALYTICS"."SH_OTRAS_LINEAS" OL LEFT JOIN SH_SALDO_NO_IDEN_RUT PRO ON(OL.PERIODO=PRO.PERIODO)
WHERE ((ol.TIPO_DEUDA='TRASPASO' AND ol.DEFINICION='SALDO' ) 
OR (ol.TIPO_DEUDA='SAE' AND ol.DEFINICION='SALDO' )
OR  (ol.TIPO_DEUDA='REPACTACIONES' AND ol.DEFINICION='SALDO')
OR (ol.TIPO_DEUDA='RENEGOCIADO' AND ol.DEFINICION='SALDO' )
OR (ol.TIPO_DEUDA='AVANCE_EFECTIVO' AND ol.DEFINICION='SALDO' ))
AND PRO.TipoTarjeta='ABIERTA'
GROUP BY OL.PERIODO, PRO.DEUDA

欢迎任何帮助,谢谢。

【问题讨论】:

    标签: qliksense qlik-expression


    【解决方案1】:

    喂,

    这很容易,所以振作起来。 如果每个表中的所有字段名称都相同,Qlik Sense 会立即将其设置为一个接一个。为了明确起见:

    concatenate(table_name)
    

    是个好主意。

    看看这个:

    这是你的例子:

    LIB CONNECT TO 'your_database';
    
    TABLA_UTIL:
      Load *;
      SQL
      SELECT
      "PERIODO",
      SUM(DEUDAFINAL) as "DEUDAFINAL"
      FROM
      "DL_RG_ANALYTICS"."SH_PROVISION" PRO WHERE ORG='628'
      GROUP BY PERIODO;
    
    LIB CONNECT TO 'your_second_database';  // where necessary
    
    concatenate(TABLA_UTIL)  //all field names must be the same
    
      Load *;
      SQL
      SELECT
       OL.PERIODO as "PERIODO",
       SUM(ABIERTA/1000000)+ DEUDA/1000000 as "DEUDAFINAL"
       FROM
       "DL_RG_ANALYTICS"."SH_OTRAS_LINEAS" OL LEFT JOIN SH_SALDO_NO_IDEN_RUT PRO ON(OL.PERIODO=PRO.PERIODO)
      WHERE ((ol.TIPO_DEUDA='TRASPASO' AND ol.DEFINICION='SALDO' ) 
      OR (ol.TIPO_DEUDA='SAE' AND ol.DEFINICION='SALDO' )
      OR  (ol.TIPO_DEUDA='REPACTACIONES' AND ol.DEFINICION='SALDO')
      OR (ol.TIPO_DEUDA='RENEGOCIADO' AND ol.DEFINICION='SALDO' )
      OR (ol.TIPO_DEUDA='AVANCE_EFECTIVO' AND ol.DEFINICION='SALDO' ))
      AND PRO.TipoTarjeta='ABIERTA'
      GROUP BY OL.PERIODO, PRO.DEUDA;
    //done
    

    【讨论】:

      【解决方案2】:

      不同意之前的回答, Concatenate 用于连接具有不同字段名称的表。 具有相同字段集的表的连接是自动的,可以使用 NOCONCATENATE 关键字(在 LOAD 之前)来避免

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-18
        • 1970-01-01
        • 2021-12-17
        相关资源
        最近更新 更多