MySQL返回每个唯一项的最小值和最大值

时间:2017-06-11 07:05:01

标签: mysql

我有一个名为scheduleData的表,其中包含以下列:

ID | CREATED (time stamp) | CLIENT | PROJECT | RESOURCE | EFFORT | WEEK (date)

数据直接来自“Excel计划”,因此它不是关系型的。 每行代表在特定周内在特定项目上预订的资源。

每次从excel导出数据时,大部分数据都是重复的,所以我只对基于CREATED列的最新数据集感兴趣。

对于每个项目,我想在最新的数据集(基于CREATED)中返回显示MIN和MAX周的行,以基本确定每个项目的开始和结束日期。

找到一个下面的例子,从描述中可以看出这个技巧,但是当我尝试执行它时会收到错误消息

SELECT t.* FROM scheduleData  t
JOIN 
( SELECT project, MIN(week) minVal
FROM scheduleData  GROUP BY project
) t2
ON t.week = t2.minVal AND t.project = t2.project;

改编了以下示例:Select min value per item in MySQL

干杯, 米卡尔

1 个答案:

答案 0 :(得分:0)

当我用新鲜的眼睛看着这个时,我才意识到我有点厚,我的问题有点垃圾。无论如何,我设法使查询适应我想要的,即返回任何给定唯一项目的最大值和最小值(在本例中为日期),在本例中为项目。 这个的SQL如下:

<%@ Language=VBScript %>
<% Option Explicit %>
<% Response.CacheControl = "no-cache" %>
<% Response.AddHeader "Pragma", "no-cache" %>
<% Response.Expires = -1 %>

<% ' VI 6.0 Scripting Object Model Enabled %>
<!--#include file="_ScriptLibrary/pm.asp"-->
<script ID="serverEventHandlersVBS" LANGUAGE="vbscript" RUNAT="Server">

dim objASPError

Sub thisPage_onenter()

ShowErrorInformation()

 end sub

Function ShowErrorInformation()
On Error Resume Next
Set objASPError = Server.GetLastError
Response.Write Server.HTMLEncode(objASPError.Category)
If Len(CStr(objASPError.ASPCode)) > 0 Then
    Response.Write Server.HTMLEncode(", " & objASPError.ASPCode)
End If
Response.Write Server.HTMLEncode(" (0x" & Hex(objASPError.Number) & ")" ) & "<br>"
If Len(CStr(objASPError.ASPDescription)) > 0 Then 
    Response.Write Server.HTMLEncode(objASPError.ASPDescription) & "<br>"
ElseIf Len(CStr(objASPError.Description)) > 0 Then 
    Response.Write Server.HTMLEncode(objASPError.Description) & "<br>" 
End If
end function

</script>

<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<TITLE></TITLE>

<LINK REL="stylesheet" TYPE="text/css" HREF="_Themes/expeditn/THEME.CSS" VI6.0THEME="Expedition">
<LINK REL="stylesheet" TYPE="text/css" HREF="_Themes/expeditn/GRAPH0.CSS" VI6.0THEME="Expedition">
<LINK REL="stylesheet" TYPE="text/css" HREF="_Themes/expeditn/COLOR0.CSS" VI6.0THEME="Expedition">
<LINK REL="stylesheet" TYPE="text/css" HREF="_Themes/expeditn/CUSTOM.CSS" VI6.0THEME="Expedition">

</HEAD>
<BODY onload="return window_onload()">

</BODY>
</HTML>