我在mysql数据库表中有购买数据。服务器上的所有数据都存储在UTC时区中。
我可以用下面的代码转换EST时区的日期时间。
$date = date_create(date('Y-m-d H:i:s'), timezone_open('Etc/GMT+0'));
date_timezone_set($date, timezone_open('Etc/GMT+5'));
我正在使用下面的代码获取当天的最后一个星期六和下一个星期六。
$dt_week_start_time = strtotime("last saturday")+((20*3600)+ 1);
$dt_week_start_date = date('Y-m-d G:i:s', $dt_week_start_time);
$dt_week_end_time = $dt_week_start_time + (7*3600*24) - 1;
$dt_week_end_date = date('Y-m-d G:i:s', $dt_week_end_time);
但如何将上述EST时区转换的日期时间与UTC时区中存储的mysql数据进行比较?当我在下面查询时,我需要转换EST时区中“purchasedatetime”字段的数据。这可能吗?还是我做得不对?请告知。
$str_query_select = "SELECT *, SUM(extendedprice) AS gross_price FROM t_product_purchase ";
$str_query_select .= " WHERE purchasedatetime BETWEEN '".$dt_week_start_date ."' AND '".$dt_week_end_date."'";
$str_query_select .= " AND sellerpkid=1";
$str_query_select .= " GROUP BY purchasedatetime ORDER BY purchasedatetime DESC ";
你可以看到:
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_convert-茨
或
SET time_zone = 'proper timezone';
being done once right after connect to database. and after this all timestamps will be converted automatically when selecting them.
在php中,您可以执行以下操作:
$date=new DateTime($dt_week_start_date);$date-
echo$日期-
然后在sql中使用它。
问题内容: 在SQL语句中,如何比较保存为TIMESTAMP的日期和YYYY-MM-DD格式的日期? 例如: 我希望此查询返回指定日期中所有带有时间戳的行,但它仅返回具有午夜时间戳的行。 谢谢 问题答案: 您可以使用该函数提取时间戳记的日期部分: 但是,如果您在timestamp列上有索引,则这样做会更快,因为它可以利用索引:
问题内容: 在Go中进行日期比较是否有任何选择?我必须根据日期和时间- 独立地对数据进行排序。因此,我可以允许一个对象在一定日期范围内发生,只要它也在一定时间范围内出现即可。在此模型中,我不能简单地选择最旧的日期,最年轻的时间/最新的日期,最新的时间和Unix()秒来比较它们。我真的很感谢任何建议。 最终,我编写了一个时间解析字符串比较模块,以检查时间是否在范围内。然而,这并不顺利。我有一些大问题
问题内容: 我用谷歌搜索并尝试了几种比较日期的方法,但不幸的是没有得到预期的结果。我有如下记录的当前状态: 我想比较日期,因此这样做: 我认为结果不应包含“ 28-10-2012”。有什么建议吗?提前致谢。 问题答案: 您的格式根本不是什么排序一个开始-你是比较 字符串 ,字符串“28-10-2012” 是 不是“2012年2月11日”更大。 相反,您应该将日期 作为date 进行比较,然后仅将其
问题内容: 这是我正在尝试执行的一些代码片段: 我似乎无法比较日期和日期时间值。比较这些的最佳方法是什么?我应该将日期时间转换为日期还是相反?我如何在它们之间转换。 (一个小问题,但似乎有点令人困惑。) 问题答案: 使用该方法将日期时间转换为日期: 或者,您可以使用代替。你可以用 消除之后的时间部分。
问题内容: 我想比较两个日期和时间,我想要所有结果 但这只是比较日期而不是时间。它给了我今天日期的所有结果集 提前致谢! 问题答案: 您要显示的查询示例: 04:00:00是4AM,所以您显示的所有结果都 在 那 之后 ,这是正确的。 如果要在下午4点之后显示所有内容,则需要在查询中使用正确的(24hr)表示法。 为了使事情更清晰,请尝试以下操作: 这将向您显示日期及其12小时时间。
问题内容: 我正在使用moment.js格式化我的日期时间,这里有两个日期值,当一个日期大于另一个日期时,我想实现一种特定的功能。我阅读了他们的大多数文档,但没有找到实现此目的的功能。我知道会在那里。 这是我的代码: 编辑 在这里,我正在比较两个日期,即,期望第一个日期大于第二个日期,但是它总是转到else条件。不知道为什么 问题答案: 我相信你正在寻找的查询功能,,,和。 但是要确切地说出您要尝