0
files_imported
--------
ID (PK)
SPN
FILE_ID
LISTPRICE
ACTION

我需要搜索和更新 TableA 和 SET ACTION='A',其中具有给定 SPN 的行中的 PRICE 值不等于为不同 FILE_ID 和匹配 SPN 找到的 PRICE 值。

我可以通过将任务分解为更小的查询来使用 PHP 来做到这一点,但我宁愿使用 MySQL 提供一个干净的解决方案。

这是我已经走了多远:

UPDATE files_imported fi1
JOIN files_imported fi2
    ON fi1.SPN = fi2.SPN
SET ACTION = 'M' 
WHERE fi1.file_id = 980987987
AND fi1.listprice <> fi2.listprice
4

1 回答 1

0
UPDATE files_imported fi1, files_imported fi2
SET f11.ACTION = 'M' 
WHERE fi1.file_id = 980987987
AND fi1.SPN = fi2.SPN /* same SPN*/
AND fi1.listprice <> fi2.listprice /* different price */
AND fi1.file_id <> fi2.file_id /* different file */
于 2013-09-19T11:59:14.393 回答