新聞中心
MySQL三表關(guān)聯(lián)修改實(shí)踐分享

專(zhuān)注于為中小企業(yè)提供成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)安康免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千余家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
在數(shù)據(jù)庫(kù)操作中,我們經(jīng)常會(huì)遇到需要同時(shí)修改多個(gè)表的數(shù)據(jù)的情況,這時(shí),我們可以使用MySQL的多表關(guān)聯(lián)修改功能來(lái)實(shí)現(xiàn)這一需求,本文將通過(guò)一個(gè)小例子來(lái)分享如何在MySQL中進(jìn)行三表關(guān)聯(lián)修改。
1. 創(chuàng)建示例表
我們需要?jiǎng)?chuàng)建三個(gè)示例表,分別為students、courses和scores,這三個(gè)表的結(jié)構(gòu)如下:
students(學(xué)生表):
| id | name |
| 1 | 小明 |
| 2 | 小紅 |
| 3 | 小剛 |
courses(課程表):
| id | course_name |
| 1 | 語(yǔ)文 |
| 2 | 數(shù)學(xué) |
| 3 | 英語(yǔ) |
scores(成績(jī)表):
| id | student_id | course_id | score |
| 1 | 1 | 1 | 90 |
| 2 | 1 | 2 | 80 |
| 3 | 1 | 3 | 85 |
| 4 | 2 | 1 | 95 |
| 5 | 2 | 2 | 88 |
| 6 | 2 | 3 | 92 |
| 7 | 3 | 1 | 75 |
| 8 | 3 | 2 | 78 |
| 9 | 3 | 3 | 80 |
2. 關(guān)聯(lián)修改需求
假設(shè)我們需要將所有學(xué)生的英語(yǔ)成績(jī)加5分,可以通過(guò)以下步驟實(shí)現(xiàn):
2.1 查詢(xún)需要修改的數(shù)據(jù)
我們需要找到所有學(xué)生的英語(yǔ)成績(jī)記錄,可以使用以下SQL語(yǔ)句查詢(xún):
SELECT s.name, sc.score FROM students s JOIN scores sc ON s.id = sc.student_id JOIN courses c ON sc.course_id = c.id WHERE c.course_name = '英語(yǔ)';
查詢(xún)結(jié)果如下:
| name | score |
| 小明 | 85 |
| 小紅 | 92 |
| 小剛 | 80 |
2.2 更新數(shù)據(jù)
接下來(lái),我們可以使用UPDATE語(yǔ)句結(jié)合JOIN子句來(lái)更新數(shù)據(jù):
UPDATE scores sc JOIN students s ON s.id = sc.student_id JOIN courses c ON sc.course_id = c.id SET sc.score = sc.score + 5 WHERE c.course_name = '英語(yǔ)';
執(zhí)行上述SQL語(yǔ)句后,scores表中的英語(yǔ)成績(jī)將會(huì)增加5分。
3. 驗(yàn)證修改結(jié)果
我們可以再次查詢(xún)所有學(xué)生的英語(yǔ)成績(jī),以驗(yàn)證修改是否成功:
SELECT s.name, sc.score FROM students s JOIN scores sc ON s.id = sc.student_id JOIN courses c ON sc.course_id = c.id WHERE c.course_name = '英語(yǔ)';
查詢(xún)結(jié)果如下:
| name | score |
| 小明 | 90 |
| 小紅 | 97 |
| 小剛 | 85 |
可以看到,所有學(xué)生的英語(yǔ)成績(jī)都已經(jīng)成功增加了5分。
分享題目:mysql三表關(guān)聯(lián)修改實(shí)踐分享怎么寫(xiě)
當(dāng)前URL:http://www.5511xx.com/article/dppchjc.html


咨詢(xún)
建站咨詢(xún)
