我在尝试弄清楚如何编写我需要的查询时遇到了一些问题。
我在mysql表中有一大堆记录,每条记录都有一个'datecreated'列,这是一个日期时间类型,格式如下:0000-00-00 00:00:00
我需要做的是提取今年第11个月的所有记录,但是它们需要从服务器日期开始计算,因此当它进入新的一年时,它仍然不会运行来自去年的查询。
这有意义吗? ......我完全不知道如何让它继续下去。
干杯,
答案 0 :(得分:2)
select
yt.*
from
yourtable yt
where
month(yt.datecreated) = 11
and year(yt.datecreated) = year(now())
;
答案 1 :(得分:0)
好的,这不是很难;)你只想要11个月(11月)?
这应该是男人:
//connect to database
$current_year = date("Y"); //gets the current year according to server time
$query = "SELECT * FROM your_table WHERE datecreated LIKE '".$current_year."-11%'";
$result = mysql_query($query) or die(mysql_error());
while ($row = mysql_fetch_array($result)){
echo '<br />';
echo $row['column_id'];
echo '<br />
';
}
将your_table更改为您的表名,将column_id更改为您要打印的列的名称
它将打印2011-11中创建的所有内容...但是当服务器时间更改为2012时,它将不会打印出任何内容,直到11月会有一些输入..这是你想要的吗?
希望它有所帮助(: