兩張表關聯修改數據

兩張表關聯修改數據錯誤sql

兩張表關聯修改數據時,若是被修改字段是由某個表中原來數據運算後數據,那麼兩張表關聯的字段,必須有個是惟一的。it

若是兩張表關聯的字段都不惟一,會致使數據混亂。date

好比三張表,order    orderitem  orderoperatesql語句

order與orderitem,order與orderoperate都是一對多的關係。數據

分別有以下字段:ant

order: idjoin

orderitem:id  orderId  quantity錯誤

orderoperate:id orderId orderItemId  quantityopera

若是是下面的sql語句:

sql=update orderitem t left join orderoperate t1 on t.orderId=t1.orderId

set t.quantity=t.quantity+t1.quantity

數據就會出現混亂;

關聯關係改成t.id=t1.orderItemId就能夠了。

相關文章
相關標籤/搜索