我有像这样的数据库表
+-------+--------------+----------+
| id | ip | date |
+-------+--------------+----------+
| 505 |192.168.100.1 |2010-04-03|
| 252 |192.168.100.5 |2010-03-03|
| 426 |192.168.100.6 |2010-03-03|
| 201 |192.168.100.7 |2010-04-03|
| 211 |192.168.100.10|2010-04-03|
+-------+--------------+----------+
如何从这个表中检索数据,其中month = 03如何编写sql来做到这一点。
select * from table where month=03
这样的事情。
答案 0 :(得分:2)
如果使用mysql,请使用我认为的MONTH()函数。
select * from table where month(date) = 3
答案 1 :(得分:1)
可选地
select * from table where '2010-02-31' < date < '2010-04-01'
应该有用。
答案 2 :(得分:1)
select * from table where month(date) = 3
如果您在2010-03赛季进行搜索,建议您这样做:
select * from table where date >= '2010-03-01' AND date < '2010-04-01'
因为此查询将使用索引(如果可用)
答案 3 :(得分:1)
SELECT * FROM Table WHERE month(date) = 3
或使用datepart功能:
SELECT * FROM Table WHERE datepart(mm, date)=3