我在试图弄清楚如何完成以下工作时遇到了一些麻烦。
我的桌子:
id: schema: updated_date
1 sometext 2012-01-01
1 sometext 2012-02-02
1 sometext 2011-03-03
1 sometext 2010-04-04
2 sometext 2012-04-05
2 sometext 2012-06-07
2 sometext 2011-04-01
2 sometext 2010-09-09
现在,我想要完成的是从表中选择所有内容,并根据 id 获取所有不同的记录,这应该给我两行,棘手的部分是根据 updated_date 获取结果,我想要最新的。所以基于上表,我希望能够提取以下2条记录:
1 sometext 2012-02-02
2 sometext 2012-06-07
任何人都可以帮助我如何制作这个我 MySQL,我正在使用 PHP PDO。
表结构:
CREATE TABLE IF NOT EXISTS `mail_schema` (
`id` int(11) NOT NULL,
`name` varchar(50) NOT NULL,
`message` text NOT NULL,
`updated_by` int(11) NOT NULL,
`last_updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
表数据:
INSERT INTO `mail_schema` (`id`, `name`, `message`, `updated_by`, `last_updated`) VALUES
(1, 'nummer et', '<p>\n med tekst</p>\n', 3, '2012-06-25 18:56:21'),
(1, 'nummer 2', '<p>\n med tekst</p>\n', 3, '2012-06-25 18:56:46'),
(1, 'test', '<p>\n test</p>\n', 3, '2012-06-25 18:57:38'),
(1, 'test igen', '<p>\n asd</p>\n', 3, '2012-06-25 18:58:28'),
(2, 'test 5', '<p>\n asd</p>\n', 3, '2012-06-25 18:59:11'),
(3, 'test 6', '<p>\n med id 3</p>\n', 3, '2012-06-25 18:59:37'),
(2, 'test 5', '<p>\n asd version 2</p>\n', 3, '2012-06-25 19:00:46');