MySQL如何将多组数据和列连接到一个表中

MySQL如何将多组数据和列连接到一个表中,mysql,Mysql,我无法理解我希望执行的查询的结构。我所拥有的是一个包含多个UnitID的表中的一大组数据。这些装置有温度和记录温度的时间戳 我希望能够显示数据,在那里我可以看到每一个单位的平均温度在每周间隔分离 为我之前的帖子道歉,我还是一个查询新手。但我将向你们展示我迄今为止所做的一切 SELECT UnitID AS 'Truck ID', AVG(Temp) As 'AVG Temp', LogTime AS 'Event Time', DAY(g.`LogTime`) as 'Day',

我无法理解我希望执行的查询的结构。我所拥有的是一个包含多个UnitID的表中的一大组数据。这些装置有温度和记录温度的时间戳

我希望能够显示数据,在那里我可以看到每一个单位的平均温度在每周间隔分离



为我之前的帖子道歉,我还是一个查询新手。但我将向你们展示我迄今为止所做的一切

SELECT UnitID AS 'Truck ID',  
AVG(Temp) As 'AVG Temp',  
LogTime AS 'Event Time',  
DAY(g.`LogTime`) as 'Day',  
MONTH(g.`LogTime`) as 'Month',  
COUNT(*) AS 'Count'  
FROM `temperature` as g  
WHERE  DATE_SUB(g.`LogTime`,INTERVAL 1 WEEK)  
AND Ana > 13  AND Ana < 16 AND NOT g.Temp = -100  
GROUP BY 'truck id', YEAR(g.`LogTime`),MONTH(g.`LogTime`),WEEK(g.`LogTime`)
Order BY 'truck id', YEAR(g.`LogTime`),MONTH(g.`LogTime`),WEEK(g.`LogTime`)  
;  
选择UnitID作为“卡车ID”,
平均(温度)作为“平均温度”,
将时间记录为“事件时间”,
日(如“LogTime”)为“日”,
月份(例如“LogTime”)为“月”,
计数(*)为“计数”
从'temperature'到g
其中日期(如“日志时间”,间隔1周)
Ana>13,Ana<16,而不是g.Temp=-100
按“卡车id”、年份(g.`LogTime`)、月份(g.`LogTime`)、周(g.`LogTime`)分组
按“卡车id”、年份(g.`LogTime`)、月份(g.`LogTime`)、周(g.`LogTime`)排序的订单
;  
(对不起,我现在不知道如何显示表格结果)

这个结果给出了一辆卡车的每周平均温度,并显示了每月哪一天记录的温度,以及每辆卡车每周的温度计数

我要执行的查询创建了5列,分别为UnitID、Week1、Week2、Week3、Week4。
在“周”列中,我希望能够显示每辆卡车的每周(一周中的每一天)平均温度,其中下一周设置为上一周之后的一周(即,Week2设置为显示从Week1开始一周的平均温度)

这就是我被困在如何创建查询的结构上的地方。我不确定是否需要创建子查询或使用Union子句。我尝试了几个查询,但我删除了它们,因为它们不起作用。我不确定这个查询是否太复杂,或者它是否可能

如果有人能帮忙,我将不胜感激。如果有任何其他信息,我可以提供,将帮助,我会尽量这样做


希望这是可以解决的p

MySQL有一个
WEEK
函数,它将以整数(0-52)返回一年中的一周。您可以在您的
GROUP BY
子句中使用它,然后使用
AVG
聚合函数来获得平均温度。您的查询如下所示:

SELECT unitID, WEEK(dateColumn) AS week, AVG(tempColumn) AS averageTemperature
FROM myTable
GROUP BY unitID, WEEK(dateColumn);

这里列出了可能对查询您的数据库有用的其他帮助。

我们帮助那些自助的人,您的问题没有显示您试图解决问题的证据。请每周澄清。。。S、 M,T,W,R,F或第1,2,3,4…53周。。。?看起来你需要使用平均值,按单位分组,以及你所追求的任何一周功能。好问题产生好答案,差问题产生很多评论/问题。好的问题包括结构、样本数据、预期结果和已经尝试过的内容。请向我们展示您已经尝试过的内容,以便我们能够帮助您理解遗漏的内容。抱歉,没有展示足够的信息,我希望我的问题更具结构谢谢您的帖子。有没有办法结合使用这些查询来显示数据,在这些数据中我可以看到每个unitID的每周平均温度?@user5070140这不是这个查询所做的吗?这个查询确实显示了卡车每周的平均温度,但是我试图在右边的列中显示周,这样unitid就不会在行中重复。如果这有道理的话:p