【问题标题】:how to select minimum time and max time from sql vb.net如何从 sql vb.net 中选择最小时间和最大时间
【发布时间】:2026-01-07 07:45:02
【问题描述】:

好的,现在我想通了,它对我有用,这是我想通的答案:

 SELECT        pno, attdate, MAX(atttime) AS attime
    FROM            att
    WHERE        (atttime >= '13:00') AND (atttime <= '23:59') 
    GROUP BY pno, attdate  


SELECT        pno, attdate, MIN(atttime) AS attime
        FROM            att
        WHERE        (atttime >= '00:00') AND (atttime <= '12:59') 
        GROUP BY pno, attdate

=============================================
非常感谢 user2342436,由于您的代码,我找到了答案。谢谢。
==============================================
我有一个表“att”,其中包含 3 列“pno”“attdate”和“atttime”,数据如下:

pno |     attdate   |      atttime
1       2015/01/15      07:02 
1       2015/01/15      07:03
1       2015/01/15      07:04
1       2015/01/15      13:01
1       2015/01/15      13:05
1       2015/01/15      13:07
2       2015/01/15      07:05 
2       2015/01/15      07:06
2       2015/01/15      07:08
2       2015/01/15      13:15
2       2015/01/15      13:16
2       2015/01/15      13:18   

我想要的是选择 min(atttime) 如果它是 AM 和 max(atttime) 如果它是我由 datetimepicker 选择的日期的 PM。所以结果一定是这样的:

 pno    |     attdate   |      atttime
    1       2015/01/15      07:02 
    1       2015/01/15      13:07
    2       2015/01/15      07:05 
    2       2015/01/15      13:18    

我正在使用 vb.net 2008 和 Sql server 2008。
我想要的是如果“atttime”是在 00:00 到 12:59 之间的 AM,则选择 min(atttime),如果“atttime”是在 13:00 到 23:59 之间的 PM,则选择 max(atttime)。我希望它更清楚,我很抱歉英语不好。 请帮助,并在此先感谢。

【问题讨论】:

    标签: sql vb.net time max min


    【解决方案1】:

    根据我对您的问题的理解,以下查询应该有效:-

    按 pno,attdate 从 att 组中选择 pno,attdate,min(atttime) attime 联盟 select pno,attdate,max(atttime) atttime from att group by pno,attdate

    如果需要其他信息,请告诉我。

    【讨论】:

    • 对不起,它对我不起作用,它给了我一个结果但不是我想要的,我想要的是选择 min(atttime) 如果“atttime”是介于 00 之间的 AM: 00 和 12:59,如果“atttime”是下午 13:00 到 23:59,则选择 max(atttime)。我希望它更清楚,我很抱歉英语不好。
    最近更新 更多