Advertisement
Guest User

Untitled

a guest
Jul 20th, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.87 KB | None | 0 0
  1. CREATE TABLE `readouts` (
  2. `sensorID` INT(10) UNSIGNED NOT NULL,
  3. `timestamp` TIMESTAMP NOT NULL,
  4. `value` FLOAT(9,5) NOT NULL,
  5. PRIMARY KEY (`sensorID`, `timestamp`)
  6. );
  7. +----------+-----------+-------+
  8. | sensorID | timestamp | value |
  9. +----------+-----------+-------+
  10.  
  11. SELECT a.*
  12. FROM readouts AS a
  13. JOIN ( SELECT sensorID
  14. , MAX(timestamp) AS timestamp
  15. GROUP BY sensorID
  16. ) AS b ON b.timestamp = a.timestamp
  17. AND b.sensorID = a.sensorID
  18. ORDER BY sensorID ASC
  19. ;
  20.  
  21. CREATE TABLE `last_readouts` (
  22. `sensorID` INT(10) UNSIGNED NOT NULL,
  23. `timestamp` TIMESTAMP NOT NULL,
  24. `value` FLOAT(9,5) NOT NULL,
  25. PRIMARY KEY (`sensorID`)
  26. );
  27.  
  28. INSERT INTO last_readouts
  29. VALUES (sID, ts, val)
  30. ON DUPLICATE KEY UPDATE
  31. `timestamp` = ts
  32. value = val
  33. ;
  34.  
  35. SELECT * FROM last_readouts;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement