我有一个名为TABLEPRICE的mysql表,该表内有3个字段:shop_ID,product,price。在表中,同一家商店可以以不同的价格出售相同的产品。我需要一个建议,关于如何消除同一商店中同一产品的多个价格的所有记录,而仅维护“最低”价格的记录。
我尝试了这个,但是没有用:
$query = "DELETE * from TABLEPRICE t1
WHERE exists (select * from TABLEPRICE t2
WHERE t2.shop_ID = t1.shop_ID and
t2.product = t1.product and
t2.price < t1.price
)";
mysql_query($query);`
更好地说明一个例子:
shop_ID-产品-价格
1 - coffee - 34
1 - bread - 22
1 - coffee - 25
1 - coffee - 27
1 - bread - 36
2 - water - 21
2 - water - 27
2 - water - 21
2 - coffee - 2
清理后应该变成:
1 - bread - 22
1 - coffee - 25
2 - water - 21
2 - coffee - 2
我使用php管理mysql表。