原创 sql結果集合並用union all 不同表的列合併用join

    結果集合並用union all 不同表的列合併用join SELECT "模塊名", "事件編碼", "點擊數量", "使用時長(單位:分)" FROM (SELECT  T.fun_name as "模塊名", T.event

原创 跨系統見的認證和授權除了用cas外

  權限的控制1,框架,2代碼實現思路類似 token的設計:    1,已進入頁面所有的按鈕都在客戶端,服務端存有token,一旦點擊了就刪除後臺的token,第二次就匹配不上,就不可請求    2,用戶id和鹽值生成固定的token-

原创 聚合函數理解

所有的聚合函數都是依照group by 去計算在組內中所有元素行 SELECT "部門", toInt64(multiIf(isNull("最大數量"),0,"最大數量")) AS "最大數量","統計類型",'空格' AS "空格" F

原创 行轉列中對應單位列的處理

行轉列中,列名對應的單位可以固定的寫在原始的列名上 例如: 原油:WTI:期貨價格:美利堅合衆國(日度)(美元/噸)   sql: select * from (select D.DATA_DATE AS "日期",          

原创 類似枚舉,數字轉文字,轉的文字用單引號''

類似枚舉,數字轉文字,轉的文字用單引號''   對於統計而言慎用表之間的left join   ,表連接會增加主表的條數,除非連接的從表可以通過where 條件控制只有一條和主表連接,否則去重 SELECT  (case         

原创 sql中的統計完全按照group by 的粒度統計

sql中的統計完全按照group by 的粒度統計,前面的字段多粒度就細,想要更粗的粒度可以再外面包一層字段少的,粗粒度的聚合 davinci中只選一個粗粒的維度相當於外包一層見粗粒度示例---維度就是聚合的粒度,維度越多,結果集基礎上聚

原创 行轉列的應用合併多行綜合定位

行轉列的應用: 可以利用行轉列把一個事件的多行屬性放在一行,和事件關聯,綜合定位事件,不必像之前一樣放在一個綜合屬性,|分隔然後用數組切分函數 原sql     可以利用行轉列把一個事件的多行屬性放在一行,和事件關聯,綜合定位事件 S

原创 報表開發

https://www.jianshu.com/p/be2cb8880df6 報表有參考,一步一列出

原创 行專列效果

示例:   原表:   SELECT * FROM demo_test       查詢結果:                   統計需求:   SELECT project, N,Y , Y/(N+Y) FROM ( SELECT

原创 綜合性的環比報表sql

10: 1,取整或者固定小數round(AVG(click_records),0) 2,any(today())聚合函數避免聚合列結合排序就是分組序列第一個的值----------聚合函數的聚合字段,算的級別根據此字段在group by

原创 davinci篩選問題

1,sql中篩選 。0 的不顯示   SELECT "用戶對象",  "二級部門", "總人數", "總註冊量", "當日註冊量", multiIf(isNull("月活賬號數量"),0,"月活賬號數量") AS "月活賬號數量" , m

原创 davinci sql表達式可以用字段運算

SELECT  T.dept_one as "用戶對象", AVG((   CASE      WHEN  (server_time >=toDate($g$)) THEN    member_count   ELSE    NULL  

原创 互斥兩行統計結果按照主鍵拼接到一起

用left join連接兩個結果集,最後以此爲結果集,將主鍵(可以是聯合主鍵),和連接兩側特有列查出 SELECT "指標代碼", "指標名",  "所屬庫",  "所屬部分",T1."提取量", T2."導出量" from (   S

原创 davinci報棧溢出

可能是sql驗證的正則表達式出問題,導致遞歸調用 1,調整數據正規化 2,調整正則 3,註釋正則校驗     public List<Map<String, Object>> query4List(String sql, int lim

原创 數據庫去重彙總 count(distinct xxx) 與distinct ; count(case when )

總括: SELECT  T.dept_one as "部門", COUNT(DISTINCT (   CASE     WHEN (is_week='1') THEN     name   ELSE    NULL   end )) as