![]() |
|
首页 │ Apache │ Linux│ Java│ MySQL│ 注册│帮助 | |||
有如下所示一数据表
CREATE TABLE price_list (
autoid int(10) NOT NULL default '0',
pid varchar(14) NOT NULL default '',
price decimal(8,2) NOT NULL default '0.00',
tm date NOT NULL default '0000-00-00',
KEY autoid (autoid)
) TYPE=MyISAM;
这是一个产品的价格关联表,考虑的产品的价格变动较为频繁
故没有把价格字段写到产品表内,只用pid进行产品的关联,tm
字段表示当前发布价格的时间
现在需要的结果是:
查找出每一个pid的最新价格,即tm为该pid系列数据的最新
请各位老大帮忙想想正确的SQL语句
测试数据:
INSERT INTO price_list VALUES (1, 'p2004111000001', '12400.00', '2005-03-22');
INSERT INTO price_list VALUES (2, 'p2004111000002', '12050.00', '2005-03-23');
INSERT INTO price_list VALUES (3, 'p2004111000001', '15000.30', '2005-03-24');
INSERT INTO price_list VALUES (4, 'p2004111000001', '12000.00', '2005-03-25');
INSERT INTO price_list VALUES (5, 'p2004111000001', '13005.00', '2005-03-26');
INSERT INTO price_list VALUES (6, 'p2004111000002', '12400.00', '2005-03-22');
INSERT INTO price_list VALUES (7, 'p2004111000002', '12050.00', '2005-03-23');
INSERT INTO price_list VALUES (8, 'p2004111000002', '15000.30', '2005-03-24');
INSERT INTO price_list VALUES (9, 'p2004111000002', '12000.00', '2005-03-25');
INSERT INTO price_list VALUES (10, 'p2004111000002', '13005.00', '2005-03-26');

