如何从今年的mysql数据库中获取数据

时间:2015-03-31 11:32:12

标签: php mysql date

在我的桌子内"新闻"有" date_in"以这种格式创建某些新闻的字段存储日期" 20150108&#34 ;;

我需要获得当年的新闻。

select title, text from news where date_in = ?

如何使用php / mysql执行此操作?

由于

7 个答案:

答案 0 :(得分:1)

它会帮助你Documentation Here

SELECT  title, text FROM  news WHERE  YEAR(date_in) = YEAR(CURDATE());

答案 1 :(得分:1)

它会帮助你

select title, text from news where  YEAR(date_in) = YEAR(CURDATE())

答案 2 :(得分:1)

您可以从给定的格式中选择以下年份。

mysql> select year('20150108');
+------------------+
| year('20150108') |
+------------------+
|             2015 |
+------------------+
1 row in set (0.00 sec)

所以在查询中你可以有

select 
title, 
text 
from news 
where year(date_in) = year(curdate());

答案 3 :(得分:1)

简单的方法是使用year()

select title, text
from news
where year(date_in) = year(now());

更好的方法是避免在当前日期使用函数。假设你没有未来日期:

select title, text
from news
where date_in >= makedate(year(now(), 1);

此版本更好,因为查询可以利用date_in上的索引。

答案 4 :(得分:0)

如果date_in列的类型为nvarchar,varchar等,请尝试使用substring过滤年份:

SELECT title, text 
FROM news 
WHERE date_in = SUBSTRING(date_in, 1, 4)

答案 5 :(得分:0)

首先,$ CurrentYear = date('Y'); //本年度即2015年 然后,SELECT标题,文本FROM news WHERE date_in LIKE'%$ CurrentYear%'

答案 6 :(得分:0)

从新闻中选择标题,文字,其中date_in> 20150101

或$ query ='选择标题,来自新闻的文字,其中date_in> '。日期(“Y”)。 '0101';