亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在MySql中如何select from一個將要更新的關系目標

發布時間:2021-10-13 10:57:10 來源:億速云 閱讀:128 作者:柒染 欄目:數據庫

MySql中如何select from一個將要更新的關系目標,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

在MySql中如何select from一個將要更新的關系目標:

+-------------------------+--------------------+------------+

|account_number | branch_name | balance |

+------------------------+---------------------+------------+

|A-101                 | Downtown     | 500.00  |

|A-102                 | Perryridge     | 400.00  |

|A-201                 | Brighton        | 900.00  |

|A-215                 | Mianus          | 700.00   |

|A-217                 | Brighton        | 750.00   |

|A-222                 | Redwood        | 700.00  |

|A-305                 | Round Hill     | 350.00   |

+------------------------+----------------------+------------+

updateaccount

setbalance = balance * 1.05

wherebalance > (select avg(balance)

fromaccount);

然后就報錯了!有沒有!如下:

Youcan't specify target table 'account' for update in FROM clause。

錯誤就是你不能指向并選擇一個將要修改或是更新的目標關系。

http://dev..com/doc/refman/5.0/en/update.html寫到:

“Currently,you cannot update a table and select from the same table in asubquery.”

但是很多情況下,我想用一些數據要更新一個關系,而這些數據恰好是通過就指向這個關系的子查詢得到的,例如本例子我需要聚集函數算account的balance均值。

解決方法:

MySQL會將from從句中子查詢的衍生關系(derivedtable)實體化成一個臨時表(temporarytable),所以我們將(selectavg(balance) from account) 再套入一個from從句即可:

updateaccount

setbalance = balance * 1.05

wherebalance >( select avg(tmp.balance)

from (select * from account ) as tmp

)

關于在MySql中如何select from一個將要更新的關系目標問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

安仁县| 忻城县| 临清市| 利辛县| 阜新市| 沧州市| 吴川市| 林口县| 丹凤县| 页游| 永仁县| 彰武县| 柳州市| 广西| 永安市| 开平市| 德令哈市| 连云港市| 化州市| 寿宁县| 鹤壁市| 泰和县| 临清市| 长治市| 泾源县| 武定县| 兴国县| 合肥市| 三原县| 奉节县| 浦东新区| 沙田区| 荣昌县| 塔河县| 夏河县| 阳江市| 津南区| 湄潭县| 凉城县| 石渠县| 皮山县|