資料庫(二)
1.連線查詢
1.內連線
select * from student st inner join number mu on st.id = nu.type,id;
2.左連線
select * from student st left joinnumber muonst.id = nu.type,id;
2.右連線
select * from student stright joinnumber muonst.id = nu.type,id;
多表聯查才可能需要右連線:表一表二連線為從表,表三為主表。
2.自關聯
通過起別名實現同一張表的連線查詢。
3.子查詢
巢狀查詢語句。
1.子查詢充當條件
例子:查詢價格高於平均價格的商品
select * from goods where price > (select avg(price) from goods);
2.子查詢充當資料來源
例子:查詢所有來自並夕夕的商品資訊,包含商品分類(表內欄位不可重複否則會報錯),可以起別名來避免。
select * from (select go.*,ca.id cid,ca.typeId ctid,ca.catename from goods go left join category ca on go.typeId=ca.typeId) new where new.company='並夕夕';
3.擴充套件
1.E-R圖
E:entry,實體,描述具有相同特徵事物的抽象
屬性:每個實體的具有的各種特徵稱為屬性
R:表示relationship,聯絡,實體之間存在各種關係,關係的型別包括一對一、一對多、多對多
2.外來鍵
說明:通過外部資料表的欄位,來控制當前資料表的資料內容變更,防止單方面的移除資料,導致關聯表產生垃圾資料。
注意:一般專案不用,因為會嚴重影響除資料查詢操作以外的其他操作。
3.索引
說明:增加查詢語句的執行效率
注意:新增過多,會嚴重影響除資料查詢操作以外的其他操作。
4.刷題
力扣
牛客網