gpt4 book ai didi

Mysql - 按每个月查询月份之间的记录

转载 作者:行者123 更新时间:2023-11-30 23:39:23 24 4
gpt4 key购买 nike

我有一张表,我需要从中检索数据。该表有一个日期字段 -tbl_date - 我需要的是,当我选择 2010 年 1 月作为起始日期和 2011 年 2 月作为截止日期时,它应该显示这两个日期之间的所有记录,以及按月分组的每个月的单独结果。

喜欢 - 结果应显示为

2010年1月
记录1个值
记录 2 个值

2010 年 2 月
记录 1 个值
记录 2 个值

…………

2011 年 2 月
记录 1 个值
记录 2 个值

谁能帮我解决这个问题?谢谢你

萨提什

最佳答案

查询非常简单:

SELECT field1, field2, field3 FROM myTable 
WHERE tbl_date BETWEEN @startdate AND @enddate;

这可以让您快速获得正确的数据(因为它可以使用 tbl_date 字段上的索引)。唯一棘手的一点是为 @startdate@enddate 变量获取正确的值。对于您的示例,它们必须是 2010-01-012011-02-28(即第一个月的开始和最后一个月的结束)。

另一点是返回的数据将如下所示:

Record 1 values from January 2010
Record 2 values from January 2010
Record 3 values from February 2010
Record 3 values from February 2010
Record 4 values from February 2010
Record 4 values from March 2010

它没有月份标题行“2010 年 1 月”和“2010 年 2 月”,将每个部分分开。 SQL 数据查询不擅长返回那种数据(主要行有 20 个数据字段,而其他行只有一个)。我建议使用应用程序(例如 php)获取数据并将这些 header 插入显示中,而不是试图将它们包含在从数据库返回的记录集中。

关于Mysql - 按每个月查询月份之间的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4714862/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com