如何在mysql中显示两个日期之间的时间
两个的DateField如何在mysql中显示两个日期之间的时间
<input type="text" name="from date" >
<input type="text" name="to date" >
例子:如果没有fromdate是2011-09-12
和todate是2011-09-15
输出中应显示:
显示每隔一小时
2011-09-12 00:00:00
2011-09-12 01:00:00
2011-09-12 02:00:00
2011-09-12 03:00:00
2011-09-12 04:00:00
.
.
.
.
.
2011-09-15 23:00:00
它可能在mysql代码或php
试试这个:// WWW:
<?php
$from_date_time = strtotime($_POST['from_date']);
$to_date_time = strtotime($_POST['to_date']);
while ($from_date_time < $to_date_time) {
echo date('Y-m-d H:i:s', $from_date_time);
$from_date_time += 3600;
}
是的,很好的解决方案。 – Atticus
@Debiprasad:非常感谢。如果我们删除strtotime意味着它不工作,它正在工作fine.one问题.strtotime的主要用途是什么 –
@ user966460它将任何英文文本日期时间描述解析为Unix时间戳。请检查这个PHP手册[strtotime](http://php.net/manual/en/function.strtotime.php) – Debiprasad
打招呼MS SQL Server 2005中您可以通过使用CTE ..
declare @dateh table(ind int identity(1,1),date1 smalldatetime,date2 smalldatetime)
insert into @dateh select '1/1/2011','1/2/2011'
select * from @dateh
;with T as
(
select date1,date2 from @dateh as d
union all
select dateadd(hh,1,date1),date2 From T
where dateadd(hh,1,date1)<= date2
)
Select date1 from T
此[链接](HTTP下列代码做到这一点。 php.net/manual/en/function.date-diff.php)可能对您有所帮助 – punit
这是一个'php'的问题,并且该问题必须**不能**在数据库级别解决*。所以,回答没有关于'mysql'的一切。 – FallenAngel