MySQL關(guān)于HANDLER命令的說明

一、 語法

官方給出的格式:

HANDLER tbl_name OPEN [ [AS] alias]

HANDLER tbl_name READ index_name { = | <= | >= | < | > } (value1,value2,...)
    [ WHERE where_condition ] [LIMIT ... ]
HANDLER tbl_name READ index_name { FIRST | NEXT | PREV | LAST }
    [ WHERE where_condition ] [LIMIT ... ]
HANDLER tbl_name READ { FIRST | NEXT }
    [ WHERE where_condition ] [LIMIT ... ]

HANDLER tbl_name CLOSE 

假設(shè)有一張表叫'user',有一列叫'name',索引列叫'name_index',如果要查詢name為小明的記錄,那么HANDLER語句的寫法就是:

handler user open as user;
handler user READ name_index=('小明') ;

handler user close;

需要注意的是,這個(gè)語句只會(huì)返回一條記錄(如果表中有滿足條件的記錄),如果要返回多條,可以這么寫:

handler user open as user;
handler user READ name_index=('小明') limit 10 ;

handler user close;

但是依舊有一個(gè)問題:我們沒辦法一次返回所有的記錄——因?yàn)槲覀儾⒉恢罎M足條件的記錄一共有多少條。

二、為什么要用HANDLER而不是“SELECT”語句

官方的說法是:

HANDLER查詢性能比SELECT更好

但從上面我們也能看出,HANDLER的使用場景比起SELECT來說要少的多(它也不支持分區(qū)表),畢竟HANDLER is a somewhat low-level statement。
但作為一個(gè)查詢技巧,結(jié)合自己一定的使用場景,還是值得一試的。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 4,012評(píng)論 0 11
  • 1. 了解SQL 1.1 數(shù)據(jù)庫基礎(chǔ) ? 學(xué)習(xí)到目前這個(gè)階段,我們就需要以某種方式與數(shù)據(jù)庫打交道。在深入學(xué)習(xí)MyS...
    鋒享前端閱讀 1,327評(píng)論 0 1
  • MSSQL 跨庫查詢(臭要飯的!黑夜) 榨干MS SQL最后一滴血 SQL語句參考及記錄集對象詳解 關(guān)于SQL S...
    碧海生曲閱讀 5,909評(píng)論 0 1
  • ORACLE自學(xué)教程 --create tabletestone ( id number, --序號(hào)usernam...
    落葉寂聊閱讀 1,243評(píng)論 0 0
  • 下午2點(diǎn),姐姐出門上學(xué)了,小麥才肯爬到我身上睡覺。 她躺在我的臂彎里,直勾勾地看著我,醞釀睡意。 從出生起,她就這...
    一片禾田閱讀 384評(píng)論 0 0

友情鏈接更多精彩內(nèi)容