Advertisement
Guest User

Untitled

a guest
Apr 6th, 2020
199
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. let databases = require("../server/dbConnection");
  2.  
  3. let start = new Date();
  4.  
  5. databases.ZNAM.query("SELECT ID, Rank, Score FROM tbl_scoreboard", (err, rows) => {    
  6.     rows.sort((a, b) => (b.Score - a.Score));
  7.  
  8.     let newRows = [];
  9.  
  10.     let rank = 1;
  11.     let score = rows[0].Score;
  12.     for (let row of rows) {
  13.         row.Old_Rank = row.Rank;
  14.         if (score == row.Score) {
  15.             row.Rank = rank;
  16.         } else {
  17.             rank++;
  18.             row.Rank = rank;
  19.             score = row.Score;
  20.         }
  21.  
  22.         if (row.Old_Rank != row.Rank) {
  23.             newRows.push(row);
  24.         }
  25.     }
  26.     // EXEC TIME: 70ms
  27.  
  28.     // rows.sort((a, b) => (a.ID - b.ID));
  29.  
  30.     let count = 0;
  31.     let query = "";
  32.     for (let row of newRows) {
  33.         query += "UPDATE tbl_scoreboard SET Rank='"+row.Rank+"' WHERE ID='"+row.ID+"'; ";
  34.         count++;
  35.     }
  36.  
  37.     if (query == "") {
  38.         console.log("empty query!");
  39.         return;
  40.     }
  41.  
  42.     databases.ZNAM.query(query, (err, rows) => {
  43.         let end = new Date();
  44.         console.log("Execution time: " + (end - start) + "ms"); // 15s
  45.         console.log("Queries: " + count);
  46.  
  47.         if (err) {
  48.             console.log(err);
  49.         }
  50.     });
  51. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement