我有一个数据库表
每次用户解决问题时,我的代码都会在这里插入一行。
CREATE TABLE `u_s_q` (
`ID` int(8) NOT NULL auto_increment,
`userid` int(6) NOT NULL,
`questionid` int(6) NOT NULL,
`time` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;
--
-- Dumping data for table `u_s_q`
--
INSERT INTO `u_s_q` VALUES (1, 1, 2, '2011-11-26 14:02:14');
INSERT INTO `u_s_q` VALUES (2, 1, 5, '2011-11-26 14:24:32');
像这样。
我试图在11月份看到问题ID是id =“1”的用户。
我不知道如何编写那个SQL语句
我该怎么写?
答案 0 :(得分:1)
使用MONTH(time)
返回月份编号,并查询11(11月)
SELECT questionid FROM u_s_q
WHERE
userid = 1
AND MONTH(`time`) = 11
或者,使用MONTHNAME()
获取实际的单词“November”,或者在您的语言环境中调用的任何内容
SELECT questionid FROM u_s_q
WHERE
userid = 1
AND MONTHNAME(`time`) = 'November'
答案 1 :(得分:0)
尝试使用月份功能:
SELECT questionid
FROM u_s_q
WHERE userid = 1 AND month(time) = 11;