- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我记录了温度和湿度传感器的值,如下所示:
mysql> SELECT date,valeur FROM temperature WHERE date >= NOW() - INTERVAL 2 HOUR;
+---------------------+--------+
| date | valeur |
+---------------------+--------+
| 2013-09-26 11:30:40 | 25.2 |
| 2013-09-26 11:33:19 | 25.4 |
| 2013-09-26 11:34:12 | 25.5 |
| 2013-09-26 11:38:37 | 25.4 |
| 2013-09-26 11:39:30 | 25.4 |
| 2013-09-26 11:40:23 | 25.4 |
| 2013-09-26 11:43:02 | 25.4 |
| 2013-09-26 11:45:41 | 25.3 |
| 2013-09-26 11:47:33 | 25.3 |
| 2013-09-26 11:51:07 | 25.4 |
| 2013-09-26 11:51:52 | 25.3 |
| 2013-09-26 11:53:38 | 25.4 |
...
| 2013-09-26 12:26:20 | 25.5 |
| 2013-09-26 12:27:12 | 25.5 |
| 2013-09-26 12:32:30 | 25.4 |
| 2013-09-26 12:35:09 | 25.5 |
| 2013-09-26 12:36:02 | 25.5 |
| 2013-09-26 12:37:50 | 25.6 |
| 2013-09-26 12:40:27 | 25.6 |
| 2013-09-26 12:49:18 | 25.6 |
| 2013-09-26 12:52:54 | 25.6 |
...
| 2013-09-26 13:16:40 | 25.5 |
| 2013-09-26 13:17:33 | 25.6 |
| 2013-09-26 13:22:05 | 25.5 |
| 2013-09-26 13:22:51 | 25.5 |
| 2013-09-26 13:23:44 | 25.5 |
| 2013-09-26 13:24:37 | 25.5 |
| 2013-09-26 13:25:30 | 25.5 |
| 2013-09-26 13:28:09 | 25.6 |
+---------------------+--------+
mysql> SELECT date,valeur FROM humidite WHERE date >= NOW() - INTERVAL 2 HOUR;
+---------------------+--------+
| date | valeur |
+---------------------+--------+
| 2013-09-26 11:30:40 | 78 |
| 2013-09-26 11:33:19 | 78 |
| 2013-09-26 11:34:12 | 78 |
| 2013-09-26 11:38:37 | 78 |
| 2013-09-26 11:39:30 | 78 |
| 2013-09-26 11:40:23 | 78 |
| 2013-09-26 11:43:02 | 79 |
| 2013-09-26 11:45:41 | 78 |
| 2013-09-26 11:47:33 | 78 |
| 2013-09-26 11:51:07 | 79 |
| 2013-09-26 11:51:52 | 79 |
| 2013-09-26 11:53:38 | 79 |
...
| 2013-09-26 12:22:48 | 78 |
| 2013-09-26 12:26:20 | 78 |
| 2013-09-26 12:27:12 | 78 |
| 2013-09-26 12:32:30 | 77 |
| 2013-09-26 12:35:09 | 77 |
| 2013-09-26 12:36:02 | 77 |
| 2013-09-26 12:37:50 | 78 |
| 2013-09-26 12:40:27 | 77 |
| 2013-09-26 12:43:06 | 78 |
| 2013-09-26 13:22:05 | 78 |
...
| 2013-09-26 13:22:51 | 78 |
| 2013-09-26 13:23:44 | 78 |
| 2013-09-26 13:24:37 | 78 |
| 2013-09-26 13:25:30 | 78 |
| 2013-09-26 13:28:09 | 78 |
+---------------------+--------+
来自this post我使用这个 mysql 命令连接两个表,并从 24 小时开始每小时获取一个值:
SELECT DATE_FORMAT(timeTable.minuteTime, '%Y-%m-%d %k:%i') date,
T2.valeur temp,
P2.valeur hum
FROM
(
SELECT minuteTime.minuteTime minuteTime,
( SELECT MAX(date) FROM temperature WHERE date <= minuteTime.minuteTime AND date >= NOW() - INTERVAL 1 DAY) tempTime,
( SELECT MAX(date) FROM humidite WHERE date <= minuteTime.minuteTime AND date >= NOW() - INTERVAL 1 DAY) humTime
FROM
(
SELECT DATE(date) + INTERVAL (HOUR(date) DIV 1 * 1) HOUR minuteTime
FROM humidite
WHERE date >= NOW() - INTERVAL 1 DAY AND date <= NOW()
UNION SELECT DATE(date) + INTERVAL (HOUR(date) DIV 1 * 1) HOUR
FROM temperature
WHERE date >= NOW() - INTERVAL 1 DAY AND date <= NOW()
GROUP BY 1
) minuteTime
) timeTable
LEFT JOIN temperature T2 ON T2.date = timeTable.tempTime
LEFT JOIN humidite P2 ON P2.date = timeTable.humTime
ORDER BY minuteTime ASC;
它工作得很好,但我真的不明白如何选择该值(在区间内随机?)。我更喜欢每小时的平均值:
+------------------+------+------+
| date | temp | hum |
+------------------+------+------+
| 2013-09-25 13:00 | NULL | NULL |
| 2013-09-25 14:00 | 25.1 | 80 |
| 2013-09-25 15:00 | 25.3 | 78 |
| 2013-09-25 16:00 | 25.6 | 75 |
| 2013-09-25 17:00 | 25.5 | 75 |
| 2013-09-25 18:00 | 25.0 | 78 |
| 2013-09-25 19:00 | 24.2 | 80 |
| 2013-09-25 20:00 | 23.9 | 84 |
| 2013-09-25 21:00 | 23.9 | 84 |
| 2013-09-25 22:00 | 24.1 | 83 |
| 2013-09-25 23:00 | 24.1 | 83 |
| 2013-09-26 0:00 | 24.0 | 82 |
| 2013-09-26 1:00 | 23.9 | 84 |
| 2013-09-26 2:00 | 23.7 | 86 |
| 2013-09-26 3:00 | 23.7 | 84 |
| 2013-09-26 4:00 | 23.7 | 85 |
| 2013-09-26 5:00 | 23.4 | 85 |
| 2013-09-26 6:00 | 23.6 | 85 |
| 2013-09-26 7:00 | 23.7 | 85 |
| 2013-09-26 8:00 | 24.0 | 84 |
| 2013-09-26 9:00 | 24.4 | 82 |
| 2013-09-26 10:00 | 24.6 | 81 |
| 2013-09-26 11:00 | 25.2 | 79 |
| 2013-09-26 12:00 | 25.4 | 79 |
| 2013-09-26 13:00 | 25.6 | 78 |
+------------------+------+------+
25 rows in set (1.11 sec)
你知道如何将 AVG() 放入这段代码中吗?
额外问题:我更改了代码以获取每小时一个值。你知道如何每 30 分钟获取 1 个值吗?
感谢您的帮助
最佳答案
试试这个:
select FROM_UNIXTIME( TRUNCATE(UNIX_TIMESTAMP(timeTable.minuteTime) / 1800,0)*1800) as halfHour,
avg(T2.valeur) as avgTemp,
avg(P2.valeur) as avgHum
FROM
(
SELECT minuteTime.minuteTime minuteTime,
( SELECT MAX(date) FROM temperature WHERE date <= minuteTime.minuteTime AND date >= NOW() - INTERVAL 1 DAY) tempTime,
( SELECT MAX(date) FROM humidite WHERE date <= minuteTime.minuteTime AND date >= NOW() - INTERVAL 1 DAY) humTime
FROM
(
SELECT DATE(date) + INTERVAL (HOUR(date) DIV 1 * 1) HOUR minuteTime
FROM humidite
WHERE date >= NOW() - INTERVAL 1 DAY AND date <= NOW()
UNION SELECT DATE(date) + INTERVAL (HOUR(date) DIV 1 * 1) HOUR
FROM temperature
WHERE date >= NOW() - INTERVAL 1 DAY AND date <= NOW()
GROUP BY 1
) minuteTime
) timeTable
LEFT JOIN temperature T2 ON T2.date = timeTable.tempTime
LEFT JOIN humidite P2 ON P2.date = timeTable.humTime
group by FROM_UNIXTIME( TRUNCATE(UNIX_TIMESTAMP(timeTable.minuteTime) / 1800,0)*1800)
ORDER BY 1 ASC;
关于Mysql 根据异步时间和平均值 JOIN 两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19029112/
我有一台 MySQL 服务器和一台 PostgreSQL 服务器。 需要从多个表中复制或重新插入一组数据 MySQL 流式传输/同步到 PostgreSQL 表。 这种复制可以基于时间(Sync)或事
如果两个表的 id 彼此相等,我尝试从一个表中获取数据。这是我使用的代码: SELECT id_to , email_to , name_to , status_to
我有一个 Excel 工作表。顶行对应于列名称,而连续的行每行代表一个条目。 如何将此 Excel 工作表转换为 SQL 表? 我使用的是 SQL Server 2005。 最佳答案 这取决于您使用哪
我想合并两个 Django 模型并创建一个模型。让我们假设我有第一个表表 A,其中包含一些列和数据。 Table A -------------- col1 col2 col3 col
我有两个表:table1,table2,如下所示 table1: id name 1 tamil 2 english 3 maths 4 science table2: p
关闭。此题需要details or clarity 。目前不接受答案。 想要改进这个问题吗?通过 editing this post 添加详细信息并澄清问题. 已关闭 1 年前。 Improve th
下面两个语句有什么区别? newTable = orginalTable 或 newTable.data(originalTable) 我怀疑 .data() 方法具有性能优势,因为它在标准 AX 中
我有一个表,我没有在其中显式定义主键,它并不是真正需要的功能......但是一位同事建议我添加一个列作为唯一主键以随着数据库的增长提高性能...... 谁能解释一下这是如何提高性能的? 没有使用索引(
如何将表“产品”中的产品记录与其不同表“图像”中的图像相关联? 我正在对产品 ID 使用自动增量。 我觉得不可能进行关联,因为产品 ID 是自动递增的,因此在插入期间不可用! 如何插入新产品,获取产品
我有一个 sql 表,其中包含关键字和出现次数,如下所示(尽管出现次数并不重要): ____________ dog | 3 | ____________ rat | 7 | ____
是否可以使用目标表中的LAST_INSERT_ID更新源表? INSERT INTO `target` SELECT `a`, `b` FROM `source` 目标表有一个自动增量键id,我想将其
我正在重建一个搜索查询,因为它在“我看到的”中变得多余,我想知道什么 (albums_artists, artists) ( ) does in join? is it for boosting pe
以下是我使用 mysqldump 备份数据库的开关: /usr/bin/mysqldump -u **** --password=**** --single-transaction --databas
我试图获取 MySQL 表中的所有行并将它们放入 HTML 表中: Exam ID Status Assigned Examiner
如何查询名为 photos 的表中的所有记录,并知道当前用户使用单个查询将哪些结果照片添加为书签? 这是我的表格: -- -- Table structure for table `photos` -
我的网站都在 InnoDB 表上运行,目前为止运行良好。现在我想知道在我的网站上实时发生了什么,所以我将每个页面浏览量(页面、引荐来源网址、IP、主机名等)存储在 InnoDB 表中。每秒大约有 10
我在想我会为 mysql 准备两个表。一个用于存储登录信息,另一个用于存储送货地址。这是传统方式还是所有内容都存储在一张表中? 对于两个表...有没有办法自动将表 A 的列复制到表 B,以便我可以引用
我不是程序员,我从这个表格中阅读了很多关于如何解决我的问题的内容,但我的搜索效果不好 我有两张 table 表 1:成员 id*| name | surname -------------------
我知道如何在 ASP.NET 中显示真实表,例如 public ActionResult Index() { var s = db.StaffInfoDBSet.ToList(); r
我正在尝试运行以下查询: "insert into visits set source = 'http://google.com' and country = 'en' and ref = '1234
我是一名优秀的程序员,十分优秀!