donnykurnia

sql beautified

Sep 17th, 2017
292
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 7.68 KB | None | 0 0
  1. SELECT `v_summary_absensi`.`USERID` AS `USERID`,
  2.        `v_summary_absensi`.`nama_pegawai` AS `nama_pegawai`,
  3.        `v_summary_absensi`.`tahun` AS `tahun`,
  4.  
  5.   (SELECT SUM(`aa`.`alfa`)
  6.    FROM `v_summary_absensi` `aa`
  7.    WHERE ((`aa`.`USERID` = `v_summary_absensi`.`USERID`)
  8.           AND (`aa`.`tahun` = `v_summary_absensi`.`tahun`))) AS `nAlfa`,
  9.  
  10.   (SELECT SUM(`aa`.`sakit`)
  11.    FROM `v_summary_absensi` `aa`
  12.    WHERE ((`aa`.`USERID` = `v_summary_absensi`.`USERID`)
  13.           AND (`aa`.`tahun` = `v_summary_absensi`.`tahun`))) AS `nSakit`,
  14.  
  15.   (SELECT SUM(`aa`.`freq_telat`)
  16.    FROM `v_summary_absensi` `aa`
  17.    WHERE ((`aa`.`USERID` = `v_summary_absensi`.`USERID`)
  18.           AND (`aa`.`tahun` = `v_summary_absensi`.`tahun`))) AS `nFreqTelat`,
  19.  
  20.   TIME_FORMAT(SEC_TO_TIME(SUM(TIME_TO_SEC(`v_summary_absensi`.`telat`))),'%H:%i:%s') AS `nTelat`,
  21.  
  22.   ROUND((SUM(TIME_TO_SEC(`v_summary_absensi`.`telat`)) / 60),0) AS `nTelatJam`,
  23.  
  24.   (CASE
  25.        WHEN (
  26.                (SELECT SUM(`aa`.`alfa`)
  27.                 FROM `v_summary_absensi` `aa`
  28.                 WHERE ((`aa`.`USERID` = `v_summary_absensi`.`USERID`)
  29.                        AND (`aa`.`tahun` = `v_summary_absensi`.`tahun`))) = 0) THEN '92.5'
  30.        WHEN (
  31.                (SELECT SUM(`aa`.`alfa`)
  32.                 FROM `v_summary_absensi` `aa`
  33.                 WHERE ((`aa`.`USERID` = `v_summary_absensi`.`USERID`)
  34.                        AND (`aa`.`tahun` = `v_summary_absensi`.`tahun`))) = 1) THEN '82.5'
  35.        WHEN (
  36.                (SELECT SUM(`aa`.`alfa`)
  37.                 FROM `v_summary_absensi` `aa`
  38.                 WHERE ((`aa`.`USERID` = `v_summary_absensi`.`USERID`)
  39.                        AND (`aa`.`tahun` = `v_summary_absensi`.`tahun`))) = 2) THEN '77.5'
  40.        WHEN (
  41.                (SELECT SUM(`aa`.`alfa`)
  42.                 FROM `v_summary_absensi` `aa`
  43.                 WHERE ((`aa`.`USERID` = `v_summary_absensi`.`USERID`)
  44.                        AND (`aa`.`tahun` = `v_summary_absensi`.`tahun`))) = 3) THEN '72.5'
  45.        WHEN (
  46.                (SELECT SUM(`aa`.`alfa`)
  47.                 FROM `v_summary_absensi` `aa`
  48.                 WHERE ((`aa`.`USERID` = `v_summary_absensi`.`USERID`)
  49.                        AND (`aa`.`tahun` = `v_summary_absensi`.`tahun`))) > 3) THEN '70'
  50.    END) AS `tAlfa`,
  51.  
  52.   (CASE
  53.        WHEN (
  54.                (SELECT SUM(`ac`.`sakit`)
  55.                 FROM `v_summary_absensi` `ac`
  56.                 WHERE ((`ac`.`USERID` = `v_summary_absensi`.`USERID`)
  57.                        AND (`ac`.`tahun` = `v_summary_absensi`.`tahun`))) IN (0,
  58.                                                                               1,
  59.                                                                               2)) THEN '92.5'
  60.        WHEN (
  61.                (SELECT SUM(`ac`.`sakit`)
  62.                 FROM `v_summary_absensi` `ac`
  63.                 WHERE ((`ac`.`USERID` = `v_summary_absensi`.`USERID`)
  64.                        AND (`ac`.`tahun` = `v_summary_absensi`.`tahun`))) IN (3,
  65.                                                                               4)) THEN '82.5'
  66.        WHEN (
  67.                (SELECT SUM(`ac`.`sakit`)
  68.                 FROM `v_summary_absensi` `ac`
  69.                 WHERE ((`ac`.`USERID` = `v_summary_absensi`.`USERID`)
  70.                        AND (`ac`.`tahun` = `v_summary_absensi`.`tahun`))) IN (5,
  71.                                                                               6)) THEN '77.5'
  72.        WHEN (
  73.                (SELECT SUM(`ac`.`sakit`)
  74.                 FROM `v_summary_absensi` `ac`
  75.                 WHERE ((`ac`.`USERID` = `v_summary_absensi`.`USERID`)
  76.                        AND (`ac`.`tahun` = `v_summary_absensi`.`tahun`))) IN (7,
  77.                                                                               8)) THEN '72.5'
  78.        WHEN (
  79.                (SELECT SUM(`ac`.`sakit`)
  80.                 FROM `v_summary_absensi` `ac`
  81.                 WHERE ((`ac`.`USERID` = `v_summary_absensi`.`USERID`)
  82.                        AND (`ac`.`tahun` = `v_summary_absensi`.`tahun`))) = 9) THEN '72.5'
  83.        WHEN (
  84.                (SELECT SUM(`ac`.`sakit`)
  85.                 FROM `v_summary_absensi` `ac`
  86.                 WHERE ((`ac`.`USERID` = `v_summary_absensi`.`USERID`)
  87.                        AND (`ac`.`tahun` = `v_summary_absensi`.`tahun`))) > 9) THEN '70'
  88.    END) AS `tSakit`,
  89.  
  90.   (CASE
  91.        WHEN ((
  92.                 (SELECT SUM(`ab`.`freq_telat`)
  93.                  FROM `v_summary_absensi` `ab`
  94.                  WHERE ((`ab`.`USERID` = `v_summary_absensi`.`USERID`)
  95.                         AND (`ab`.`tahun` = `v_summary_absensi`.`tahun`))) = 0)
  96.              OR (
  97.                    (SELECT SUM(`ab`.`freq_telat`)
  98.                     FROM `v_summary_absensi` `ab`
  99.                     WHERE ((`ab`.`USERID` = `v_summary_absensi`.`USERID`)
  100.                            AND (`ab`.`tahun` = `v_summary_absensi`.`tahun`))) < 7)) THEN '92.5'
  101.        WHEN ((
  102.                 (SELECT SUM(`ab`.`freq_telat`)
  103.                  FROM `v_summary_absensi` `ab`
  104.                  WHERE ((`ab`.`USERID` = `v_summary_absensi`.`USERID`)
  105.                         AND (`ab`.`tahun` = `v_summary_absensi`.`tahun`))) = 7)
  106.              OR (
  107.                    (SELECT SUM(`ab`.`freq_telat`)
  108.                     FROM `v_summary_absensi` `ab`
  109.                     WHERE ((`ab`.`USERID` = `v_summary_absensi`.`USERID`)
  110.                            AND (`ab`.`tahun` = `v_summary_absensi`.`tahun`))) < 13)) THEN '82.5'
  111.        WHEN ((
  112.                 (SELECT SUM(`ab`.`freq_telat`)
  113.                  FROM `v_summary_absensi` `ab`
  114.                  WHERE ((`ab`.`USERID` = `v_summary_absensi`.`USERID`)
  115.                         AND (`ab`.`tahun` = `v_summary_absensi`.`tahun`))) = 13)
  116.              OR (
  117.                    (SELECT SUM(`ab`.`freq_telat`)
  118.                     FROM `v_summary_absensi` `ab`
  119.                     WHERE ((`ab`.`USERID` = `v_summary_absensi`.`USERID`)
  120.                            AND (`ab`.`tahun` = `v_summary_absensi`.`tahun`))) < 25)) THEN '77.5'
  121.        WHEN ((
  122.                 (SELECT SUM(`ab`.`freq_telat`)
  123.                  FROM `v_summary_absensi` `ab`
  124.                  WHERE ((`ab`.`USERID` = `v_summary_absensi`.`USERID`)
  125.                         AND (`ab`.`tahun` = `v_summary_absensi`.`tahun`))) = 25)
  126.              OR (
  127.                    (SELECT SUM(`ab`.`freq_telat`)
  128.                     FROM `v_summary_absensi` `ab`
  129.                     WHERE ((`ab`.`USERID` = `v_summary_absensi`.`USERID`)
  130.                            AND (`ab`.`tahun` = `v_summary_absensi`.`tahun`))) < 37)) THEN '72.5'
  131.        WHEN (
  132.                (SELECT SUM(`ab`.`freq_telat`)
  133.                 FROM `v_summary_absensi` `ab`
  134.                 WHERE ((`ab`.`USERID` = `v_summary_absensi`.`USERID`)
  135.                        AND (`ab`.`tahun` = `v_summary_absensi`.`tahun`))) > 36) THEN '70'
  136.    END) AS `tFreqTelat`,
  137.  
  138.   (CASE
  139.        WHEN ((ROUND((SUM(TIME_TO_SEC(`v_summary_absensi`.`telat`)) / 60),0) = 0)
  140.              OR (ROUND((SUM(TIME_TO_SEC(`v_summary_absensi`.`telat`)) / 60),0) < 61)) THEN '92.5'
  141.        WHEN ((ROUND((SUM(TIME_TO_SEC(`v_summary_absensi`.`telat`)) / 60),0) = 61)
  142.              OR (ROUND((SUM(TIME_TO_SEC(`v_summary_absensi`.`telat`)) / 60),0) < 121)) THEN '82.5'
  143.        WHEN ((ROUND((SUM(TIME_TO_SEC(`v_summary_absensi`.`telat`)) / 60),0) = 121)
  144.              OR (ROUND((SUM(TIME_TO_SEC(`v_summary_absensi`.`telat`)) / 60),0) < 241)) THEN '77.5'
  145.        WHEN ((ROUND((SUM(TIME_TO_SEC(`v_summary_absensi`.`telat`)) / 60),0) = 240)
  146.              OR (ROUND((SUM(TIME_TO_SEC(`v_summary_absensi`.`telat`)) / 60),0) < 361)) THEN '72.5'
  147.        WHEN (ROUND((SUM(TIME_TO_SEC(`v_summary_absensi`.`telat`)) / 60),0) > 360) THEN '70'
  148.    END) AS `ttelatJAM`
  149.  
  150. FROM `v_summary_absensi`
  151. GROUP BY `v_summary_absensi`.`USERID`,
  152.          `v_summary_absensi`.`tahun`
Advertisement
Add Comment
Please, Sign In to add comment