从mysql数据库中删除记录

时间:2018-09-11 18:46:22

标签: php mysql

我有一个名为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表。

0 个答案:

没有答案