mysql表關聯問題(第二卷 外來鍵1對多之2

2022-03-17 21:02:52 字數 1481 閱讀 3005

上捲我用的查詢語句我們可以看到全部資料,很明顯這樣的方式查詢的資料並不詳細:

select * from usr left join fzu on usr.fzu = fzu.id where fzu.fzu = 'a';我在之前語句的後面拼接了個where語句

看下結果:

多麼完美的查詢

現在悲催的是你的boss又加需求了,加需求這東西不先說是真煩人現在加的需求是根據玩家玩遊戲的能力表現,把遊戲玩家分為紅色,綠色,橙色,紫色四個等級,說實話乙個產品/專案經理的大局觀很重要乙個問題考慮不細緻會導致後期整個專案的進度延期,這不光是管理層要想到,員工也要想到。

那麼 現在肯定是要新建個顏色表了

(1)建立新錶

很明顯這個表是要與user表做關聯,先來看下usr表:

很明顯沒有與顏色相關聯的字段。

(2)向usr表新增字段:

alter table usr add yans int(20) not null comment '顏色';

看下結果:

這個yans欄位都為0,因為要與顏色表做關聯所以ussr表中yans這個字段只能取1,2,3,4

向字段插入資料:

update usr set yans=2 where id=1;以此類推

查詢下結果:

(3)測試關聯查詢:

成功的又做了個關聯表

現在是一表對多表了:

(4)1對多關聯查詢

看到了吧 一表對多表

再來個精確查詢

現在解決了 1對1 與1對多的問題

關聯表的外來鍵問題

每張資料庫中表的主鍵只能有乙個主鍵,主鍵可以唯一標識條記錄 而外鍵是相對於和這張表相關聯的那張表的主鍵,乙個表可以有無數條外來鍵 建立外來鍵的方法 alter table class add constraint fk teacher id foreign key teacher id refere...

mysql表關聯問題(第一卷 外來鍵1對多之1

表關聯的問題在開發中是必不可少的,現在我先簡單的談談我的學習經驗。先來說一下外來鍵一對多的問題。步驟1 準備資料 1 設計模擬場景 乙個遊戲為了測試遊戲的運 況,招來了一批使用者來試玩,現需要錄入這些使用者的基本資訊 由於是簡易教程,所以我少用些字段 由於遊戲的服務區有四個,所以我需要在四個區域都要...

深入mysql外來鍵關聯問題的詳解(中)

如下 mysql update country set country id 100 where country id 1 error 1451 23000 cannot delete or update a parent row a foreign key constraint fails tes...