我有这张桌子:
CREATE TABLE IF NOT EXISTS `Vars` (
`ID` bigint(20) NOT NULL AUTO_INCREMENT,
`code` varchar(15) NOT NULL,
`userID` bigint(20) NOT NULL,
`viewedT` bigint(20) NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
我有这些价值观:
INSERT INTO `Vars` (`ID`, `code`, `userID`, `viewedT`) VALUES
(1, 'alex1234567', 1, 25),
(2, 'Dan1234567', 2, 15);
现在奇怪的是,我不能用这个查询得到正确的结果:
select min(`viewedT`), `code` From Vars
结果是:
min(`viewedT`) Code
15 alex1234567
编辑:我需要的是选择
code
wich havemin(viewsT)
我确信我遗漏了一些语法上很小的东西,但我需要知道我的错误并从中吸取教训。
最佳答案
假设要找到具有最小值的一行,请使用
select viewedT, code, id from vars
where viewedT= (select min(viewedT) from vars)
如果多行包含最小值,则将获得所有此类行。也就是说,如果两行的
viewedT
值为15,则可以同时得到这两行。