深入理解MYSQL游標

2022-05-03 22:00:10 字數 524 閱讀 6206

萬物皆有存在的理由,很多人都認為有效有害無益。由於理解的公升入,也許會改變大家的看法。

游標的三個屬性:

1,asensitive,資料庫也可以選擇不複製結果集。

2,read only,不能更新。

3,nonscrollable,游標只能向乙個方向行進,並且不可以跳過任何一行資料。

使用游標的步驟:

1,定義游標變數

declare cur_name cursor    for select_statement;

2,開啟游標

open cur_name;

3,從游標中取資料

fetch cur_name into var1_name,[var2_name]...

4,關閉游標

close cur_name;

游標的開銷來自於處理每一行資料。游標的操作的快慢取決於資料集合的大小。

sql語句的掃瞄成本為o(n),游標效能不會有巨大提公升,游標會有額外的開銷;如果游標掃瞄成本為o(n**2),或許可以帶來效能的提公升。

mysql 索引深入理解 深入理解MySql的索引

為什麼索引能提高查詢速度 先從 mysql的基本儲存結構說起 mysql的基本儲存結構是頁 記錄都存在頁裡邊 各個資料頁可以組成乙個雙向鍊錶每個資料頁中的記錄又可以組成乙個單向鍊錶 每個資料頁都會為儲存在它裡邊兒的記錄生成乙個頁目錄,在通過主鍵查詢某條記錄的時候可以在頁目錄中使用二分法快速定位到對應...

MySQL深入理解

儲存引擎 innodb表引擎 myisam表引擎 其他的表引擎 索引 索引對效能的影響 索引的使用場景 索引的型別 對比說明 mysql索引的建立原則 mysql索引的注意事項 查詢優化 查詢分析sql查詢慢的原因 優化查詢過程中的資料訪問 避免使用如下sql語句 是否在掃瞄額外的記錄?優化長難的查...

mysql深入理解二

過濾資料 本章講授如何使用select語句的where 子句指定的搜尋條件。資料庫表一般包含 大量的資料,很少需要檢索表中所有的行。通常只會根據特定操作或報告的需要 提取資料的子集。只檢索所需資料需要的指定搜尋條件 search criteria 搜尋條 件也稱為過濾條件 filter condit...