手動整理彙總MySQL基礎知識2

2022-05-08 07:42:11 字數 3095 閱讀 9758

8.聯結

sql最強大的功能之一就是能在資料檢索查詢的執行中聯結(join)表。可以將多個表聯絡起來。

1)外來鍵的概念

外來鍵為某個表中的一列,它包含另乙個表的主鍵值,定義了兩個表之間的關係。

2) 內部聯結

目前為止所用的聯結稱為等值聯結,它基於兩個表之間的相等測試。這種聯結也稱為內部聯結。

以下語句的結果與上面的語句執行結果是相一致的。

3) 聯結多個表

4)自聯結

自聯結的查詢速率比子查詢要高。

自聯結:

5)外部聯結

如果聯結包含了哪些在相關表中沒有關聯行的行,這種型別的聯結稱為外部聯結。

在外部聯結中需要考慮左外部聯結和右外部聯結的問題,二者的區別是表的順序不同。

左聯結select customers.cust_id, orders.order_num from customers left outer join orders on customers.cust_id = orders.cust_id;

右聯結select customers.cust_id, orders.order_num from customers right outer join orders on customers.cust_id = orders.cust_id;

9. 組合查詢

這種查詢使用在執行多個查詢並且將結果作為單個查詢結果集返回的情況。

組合查詢使用的是union關鍵字,在使用的時候需要注意一下幾個注意事項:

1)union必須由兩條或兩條以上的select語句組成,語句之間用關鍵字union分隔;

2)union中的每個查詢必須包含相同的列、表示式或聚集函式;

3)列資料型別必須相容:型別不必完全相同,但必須是dbms可以隱含地轉換的型別。

10. 全文檢索

在使用mysql進行全文檢索的時需要使用mysql的乙個引擎叫myisam,該引擎支援全文檢索。因此,在設計乙個叫productnotes表的時候,特別標註了引擎的名稱,在建立其他的表時使用的是另乙個叫innodb的引擎,這個引擎不支援全文檢索。

create table productnotes

(note_id int not null auto_increment,

prod_id char(10) not null,

note_date datetime not null,

note_text text null,

primary key(note_id),

fulltext(note_text)

)engine = myisam;

進行全文檢索要使用到的函式是match()和against(),

例如:select note_text from productnotes where match(note_text) against('rabbit');

如果是想打分呢,可以這樣操作:

舉例說明:

前端基礎知識整理彙總(上)

html頁面的生命週期有以下三個重要事件 每個事件都有特定的用途 1 domcontentloaded dom 載入完畢,所以 js 可以訪問所有 dom 節點,初始化介面。2 load 附加資源已經載入完畢,可以在此事件觸發時獲得影象的大小 如果沒有被在 html css 中指定 3 before...

基礎知識彙總

整型int,浮點型float,複合型complex 基本不使用 字串string,布林型bool,列表list,字典dict,集合set,元組tuple 可變資料型別 list dict set 當刪除第乙個元素的時候,後面的元素向前一定了一次,而for迴圈還是要向後走一步,這樣就錯過了在沒有刪除前...

基礎知識整理

1.在輸出字元變數的值時,可以選擇以十進位制整數形式輸出,或以字元形式輸出。2.在乙個整數的末尾加大寫字母l或小寫字母l,表示它是長整型。3.代表除法運算子,兩個實數相除的結果是雙精度實數。兩個整數相除的結果是整數,捨去小數部分。但是,如果除數或被除數中有乙個是負值,則捨入的方向是不固定的。多數c編...