`
y806839048
  • 浏览: 1121287 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

davinci中报表sql有关写法

阅读更多

 

davinci中报表sql有关写法

 

 

有case when 统计分组后的同类列值-----经过聚合函数统计之后不是数字类型的都变成数字类型的了----作为指标

 

sql中的变量用$$占位,和设置的变量要一致---只有设置变量后才可在页面设置控制控件,sql占位中的默认值选定后需要点击确认,否则没有选成功,会报null

 

 

 

    select

        date(a.`日期`) as `日期`,

    date_format(a.`日期`,'%Y') as 年份,

concat('Q',quarter(a.`日期` )) as 季度,

concat( date_format(a.`日期`,'%Y'),"_",concat('Q',quarter(a.`日期` ))) AS 年_季度,

    a.`不变价GDP分项` as 不变价GDP分项,

a.`不变价GDP同比`*0.01 as 不变价GDP同比

     from `INDEX_HG_GDP_RATE` a

 

 

select * from R_PRICE_BR_GJ_MP

 

 

 

    select

        date(a.`日期`) as `日期`,

    date_format(a.`日期`,'%Y') as 年份,

concat('Q',quarter(a.`日期` )) as 季度,

concat( date_format(a.`日期`,'%Y'),"_",concat('Q',quarter(a.`日期` ))) AS 年_季度,

    a.`不变价GDP分项` as 不变价GDP分项,

a.`不变价GDP同比`*0.01 as 不变价GDP同比

     from `INDEX_HG_GDP_RATE` a

 

 

 

 

SELECT

`year` AS `年份`,

case-------------------------------------

 when  `INDEXCODE`  = 'YS_0000106444' then '澳大利亚'

WHEN `INDEXCODE`  = 'YS_0000106445' THEN '巴西'  -------------------then就是这列的最终值

WHEN `INDEXCODE`  = 'YS_0000106448' THEN '俄罗斯'

WHEN `INDEXCODE`  = 'YS_0000106456' THEN '新喀里多尼亚'

WHEN `INDEXCODE`  = 'YS_0000106449' THEN '菲律宾'

WHEN `INDEXCODE`  = 'YS_0000106457' THEN '印尼'

WHEN `INDEXCODE`  = 'YS_0000106458' THEN '中国'

WHEN  `INDEXCODE`  = 'YS_0000106452' THEN '加拿大'

else null

end  as '国家',-------------------------------------------

 `DATAVALUE`  as '产量'

FROM `f9_nie_zhzs` 

where `year`in($year$)

 and `INDEXCODE` in ('YS_0000106444','YS_0000106445', 'YS_0000106448','YS_0000106456','YS_0000106449','YS_0000106457','YS_0000106458' , 'YS_0000106452')

 

 

 

 

SELECT

`DATADATE`  as '日期',

sum(-----------------------------------

(

CASE----------------

WHEN (

 `INDEXCODE`  ='YS_0000191631'

) THEN

 `DATAVALUE`       ------------要统计的字段,普通的sum是统计整列,用case 可以统计列中同类值

ELSE

NULL

END-----------------------

)

) AS 'YS_0000191631',-------------------------------

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='YS_0000191633'

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'YS_0000191633',

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='ST_0000299954'

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'ST_0000299954',

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='YS_0000068600'

 

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'YS_0000068600',

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='YS_0000993195'

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'YS_0000993195',

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='YS_0000993196'

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'YS_0000993196',

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='YS_0000993197'

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'YS_0000993197',

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='YS_0002560384'

 

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'YS_0002560384',

 

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='YS_0003985719'

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'YS_0003985719',

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='FU_0000557459'

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'FU_0000557459',

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='Sa_0000177252'

 

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'Sa_0000177252',

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='ST_0000076917'

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'ST_0000076917',

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='YS_0003985721'

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'YS_0003985721',

sum(

(

CASE

WHEN (

 `INDEXCODE`  ='YS_0003985720'

 

) THEN

 `DATAVALUE`

ELSE

NULL

END

)

) AS 'YS_0003985720'

FROM  `f9_nie_qxjc` 

group by  `DATADATE`

 

 

 

 

 

 

变量名称只要是sql中有的即可

 

 

select

date_format(日期,'%Y-%m-%d') as '日期',

地区,

sum(

(

CASE

WHEN (

钢材品种='螺纹'

) THEN

 建龙价格

ELSE

NULL

END

)

) AS '螺纹-建龙价格',

sum(

(

CASE

WHEN (

钢材品种='螺纹'

) THEN

 汇总价格

ELSE

NULL

END

)

) AS '螺纹-汇总价格',

sum(

(

CASE

WHEN (

钢材品种='螺纹'

) THEN

 期货主力价格

ELSE

NULL

END

)

) AS '螺纹-期货主力价格',

sum(

(

CASE

WHEN (

钢材品种='盘螺'

) THEN

 建龙价格

ELSE

NULL

END

)

) AS '盘螺-建龙价格',

sum(

(

CASE

WHEN (

钢材品种='盘螺'

) THEN

 汇总价格

ELSE

NULL

END

)

) AS '盘螺-汇总价格',

sum(

(

CASE

WHEN (

钢材品种='盘螺'

) THEN

 期货主力价格

ELSE

NULL

END

)

) AS '盘螺-期货主力价格',

 

sum(

(

CASE

WHEN (

钢材品种='热卷'

) THEN

 建龙价格

ELSE

NULL

END

)

) AS '热卷-建龙价格',

sum(

(

CASE

WHEN (

钢材品种='热卷'

) THEN

 汇总价格

ELSE

NULL

END

)

) AS '热卷-汇总价格',

sum(

(

CASE

WHEN (

钢材品种='热卷'

) THEN

 期货主力价格

ELSE

NULL

END

)

) AS '热卷-期货主力价格'

from gangcaifenquyujiagequshi

group by 日期,地区

 

======注册用户分正式和非正式用户分类占比饼图====

 

SELECT

multiIf(isNull("非正式用户"),0,"非正式用户")+3432-3432+605 AS "非正式用户" ,

multiIf(isNull("正式用户"),0,"正式用户")+113+549 AS "正式用户"

FROM

(SELECT 

COUNT(

  DISTINCT(

  CASE

    WHEN (auth_type NOT IN ('1') ) THEN

  uid

  ELSE

   NULL

  end

)) as "非正式用户",

COUNT(

  DISTINCT(

  CASE

    WHEN ( auth_type IN ('1')) THEN

  uid

  ELSE

   NULL

  end

)) as "正式用户"

FROM  

(

   SELECT uid,auth_type

  FROM daily_new_clientrpt_master mm left join daily_new_clientrpt_slave ss ON mm.event_id=ss.event_id  WHERE mm.event_code='101101000100016'  AND ss.event_property_code='101101000100016003' AND mm.event_id IN

(SELECT max(event_id) FROM daily_new_clientrpt_master m left join daily_new_clientrpt_slave s ON m.event_id=s.event_id WHERE m.event_code='101101000100016'  AND event_property_code='101101000100016003' GROUP BY uid) 

 

 

) T )

 

 

 

=====用户根据注册渠道分类====

 

SELECT "注册来源",

( case when( "注册来源"='客户端')then

                    "数量"+50+668+549

                      else

                     "数量"

                     end

                    ) AS "数量"

                    FROM

(                    

SELECT

 (case 

                        when( event_property_value='0' )then

                        '客户端'

                     when ( event_property_value='1') then

                         '手机版'

                     when ( event_property_value='2' ) then

                         '管理端添加'

          when ( event_property_value='3') then

                         '外部用户导入'

                     when ( event_property_value='4') then

                         'CRM新增'

                      when ( event_property_value='5' ) then

                         '主站网页版新增'

    when ( event_property_value='6' ) then

                         '会议邀请'

  when ( event_property_value='7' ) then

                         '活动'

  when ( event_property_value='8' ) then

                         '管理员邀请'

                        else

                           '其他'

                      end

                     ) as "注册来源" ,

                     "数量"

FROM

(

SELECT

event_property_value,event_property_code,COUNT( DISTINCT(uid)) AS "数量"

from

(

  SELECT event_property_value,event_property_code,uid

  FROM daily_new_clientrpt_master mm left join daily_new_clientrpt_slave ss ON mm.event_id=ss.event_id  WHERE mm.event_code='101101000100016'  AND ss.event_property_code='101101000100016003' AND mm.event_id IN

(SELECT max(event_id) FROM daily_new_clientrpt_master m left join daily_new_clientrpt_slave s ON m.event_id=s.event_id WHERE m.event_code='101101000100016'  AND event_property_code='101101000100016003' GROUP BY uid) 

 

 

) GROUP BY event_property_value,event_property_code)) 

 

 

==导入/导出===

 

 

 

SELECT

"指标代码",

"指标名", 

"所属库", 

"所属部分",

T1."提取量",

T2."导出量"

from

 

(

  SELECT 

 

 arrayElement(splitByChar('|',event_property_value),1) as "指标代码", 

 arrayElement(splitByChar('|',event_property_value),2) as "指标名", 

 arrayElement(splitByChar('|',event_property_value),3) as "所属库", 

 arrayElement(splitByChar('|',event_property_value),4) as "所属部分",

  COUNT(

   (CASE 

     WHEN (event_code='101101000800016') THEN

   "指标代码"

   else

   null

   end)

 ) AS "提取量"

 

FROM

(SELECT s.event_code, s.event_property_code,s.event_property_name,s.event_property_value 

 FROM  default.daily_new_clientrpt_slave s 

 WHERE s.event_property_code != '' AND s.event_property_code ='101101000800016005' AND  (  s.event_code = '101101000800016')  AND day = today() LIMIT 10) T 

WHERE  "所属库" !=''AND "指标名"!='undefined' GROUP BY "指标代码","指标名", "所属库", "所属部分"  

) T1 

 

left JOIN 

(SELECT 

 

 arrayElement(splitByChar('|',event_property_value),1) as "指标代码", 

 arrayElement(splitByChar('|',event_property_value),2) as "指标名", 

 arrayElement(splitByChar('|',event_property_value),3) as "所属库", 

 arrayElement(splitByChar('|',event_property_value),4) as "所属部分",

 

   COUNT(

   (CASE 

     WHEN (event_code='101101000800027') THEN

   "指标代码"

   else

   null

   end)

 ) AS "导出量"

 

FROM

(SELECT s.event_code, s.event_property_code,s.event_property_name,s.event_property_value 

 FROM  default.daily_new_clientrpt_slave s

 WHERE s.event_property_code != '' AND s.event_property_code ='101101000800027005' AND  (  s.event_code = '101101000800027') AND day = today()) T 

WHERE  "所属库" !='' AND "指标名"!='undefined' GROUP BY "指标代码","指标名", "所属库", "所属部分") T2

ON T1."指标代码"=T2."指标代码" AND T1."所属库"=T2."所属库" AND  T1."所属部分"=T2."所属部分"  ORDER BY "指标代码" DESC

 

 

分享到:
评论

相关推荐

    Davinci Configurator

    本教程将详细介绍如何通过DaVinci Configurator将AUTOSAR模块添加到项目中,特别是在处理跨项目引用的情况下。 首先,理解AUTOSAR模块间的依赖关系至关重要。AUTOSAR模块之间通过引用来配置依赖,例如,EcuM(ECU ...

    汽车编程-德国Vector DaVinci Configurator Pro AUTOSAR标准的软件配置工具软件.docx

    汽车编程-德国Vector DaVinci Configurator Pro AUTOSAR标准的软件配置工具软件 在汽车电子领域,AUTOSAR(Automotive Open System Architecture)是德国开发的一种开源的汽车软件架构标准。它旨在提供一个通用的、...

    Vector Davinci官方帮助配置使用手册(AutoSAR).pdf

    在本手册中,会详细介绍如何使用Vector Davinci软件来配置和使用AutoSAR项目。 手册首先介绍了关于文档的基本信息,包括版本历史、如何快速找到信息、文档中所使用的约定、认证信息、保修信息、支持信息、商标信息...

    da_Vinci_Xi_System_User_Manual.pdf

    * 安全性:da Vinci Xi系统具有高安全性,能够确保手术过程中的安全性。 * 高效性:da Vinci Xi系统能够快速完成手术操作,提高手术效率。 * 可靠性:da Vinci Xi系统具有高可靠性,能够确保长时间的手术操作。 da...

    davinci-dev-0.3.zip

    "davinci-dev-0.3"可能包含了项目的主干代码,包括核心库、模块化组件以及相关的配置文件。 2. **编译器与构建工具**:为了将源代码转化为可执行程序,编译器和构建工具必不可少。例如,可能会有Grunt、Gulp或...

    ChatGPT接入项目实例 Python 调用davinci 002 api 示例 text-davinci-002

    ChatGPT接入项目实例 Python 调用davinci 002 api 示例 text-davinci-002

    数据可视化之davinci

    从今天开始,我会持续的讲解Davinci从入门到放弃相关视频。视频和相关的软件,我都会以百度云盘的方式,长期免费分享! 视频和相关软件以百度云盘的方式,分享出来如下: 链接:...

    使用Davinci 添加Rte信号.7z

    本教程将详细讲解如何在DaVinci Developer工具中添加并管理RTE信号。 一、了解RTE与信号 RTE是Autosar系统中的核心组件,它负责在ECU(Electronic Control Unit)上运行时,管理SWC间的通信。信号(Signal)是...

    DaVinCi 配置EcuM模块的技术手册

    综上所述,《DaVinCi 配置EcuM模块的技术手册》是开发和维护汽车电子系统中基于AUTOSAR架构的ECU不可或缺的参考资料,提供了全面的API接口说明和功能实现细节,有助于开发者高效地管理和控制ECU的生命周期。

    Davinci_Develop

    "达芬奇开发者"(Davinci Developer)是面向这一领域,专为实现向量(Vector)汽车电子开发而设计的一款强大工具。它集成了多种功能,旨在提升开发效率,确保软件质量,并简化复杂的嵌入式系统开发流程。 一、向量...

    DaVinci系统培训课程操作说明.pdf

    DaVinci 系统培训课程操作说明中强调了安全注意事项的重要性,包括不能将本手册或相关材料copy给非 Honeywell Measurex 人员或实体,不能将本手册作为系统操作手册使用,等等。操作员需要严格遵守安全规程和操作指南...

    da Vinci Xi user manual

    综上所述,《da Vinci Xi user manual》主要介绍了达芬奇Xi手术模拟器的相关版权、商标信息,设备与软件版本要求以及最终用户软件许可协议条款。这些内容对于理解如何正确、合法地使用该模拟器至关重要,同时也有助...

    MATLAB + DaVinci autosar工具链开发文档.pdf

    AUTOSAR 就是AUTomotive Open System ARchitecture,MATLAB + DaVinci(国内主流)进行AUTOSAR开发车用ECU软件的工具链使用说明文档。

    Vector工具链(davinci)配置AutoSAR工程所需的dbc文件

    很多做AUTOSAR软件集成时,没有配置davinci所需的dbc文件,我分享一下

    DaVinci开发环境搭建

    根据提供的标题、描述、标签及部分内容,我们可以提炼出与DaVinci开发环境搭建相关的几个关键知识点。 ### DaVinci开发环境搭建概述 DaVinci系列是德州仪器(TI)推出的一系列高性能嵌入式多媒体处理器,它集成了...

    DaVinci Resolve 12 Studio Mac (达芬奇调色软件) V12.5.5 中文专业版

    DaVinci Resolve 12.5 mac 是一款为Mac OS 平台开发的达芬奇调色系统,DaVinci Resolve mac 即是大家俗称的达芬奇12,DaVinci Resolve mac 破解 是与好莱坞电影公司合作开发的世界顶级的调色软件,被广泛的用于电影....

    davinci-resizer.zip_Resizer_davinci_davinci resizer _resizer DEV

    压缩包内的文件“davinci-resizer”包含了完整的工具源码、头文件、以及相关的文档资料。开发者可以通过阅读源码,了解其内部实现细节,进一步优化或定制化以满足特定需求。此外,文档资料中详细解释了如何编译和...

    TI-DaVinci.rar_davinci_ti davinci o

    在“TI DaVinci.ppt”这个文件中,我们可以期待了解到以下几个关键知识点: 1. **程序架构**: - DaVinci架构:它基于一个强大的多核体系结构,通常包括一个或多个C64x+ DSP核心,用于处理复杂的计算任务;ARM...

    test_uart.rar_davinci_davinci uart_davinci 串口

    标题中的“test_uart.rar”表明这是一个与UART(通用异步收发传输器)相关的测试工程文件,用于在Davinci平台上进行串口通信的验证。Davinci是TI(德州仪器)公司推出的一种数字信号处理器(DSP)和视频处理器的集成...

    DaVinCi 配置 PduR模块的技术手册,内容涉及PduR功能模块介绍,API接口等

    DaVinCi 配置 PduR模块的技术手册,内容涉及PduR功能模块介绍,API接口等.基于RH850芯片的DaVinCi诊断模块配置手册。虽然说是RH850芯片SIP包里的,但是文档内的内容是标准化的,通用化的。包括函数接口等服务都是...

Global site tag (gtag.js) - Google Analytics