日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > > 充電吧
[導(dǎo)讀]MYSQL的引擎不是一般的多,這次說(shuō)到的是MERGE,這個(gè)引擎有很多特殊的地方:MERGE引擎類型允許你把許多結(jié)構(gòu)相同的表合并為一個(gè)表。然后,你可以執(zhí)行查詢,從多個(gè)表返回的結(jié)果就像從一個(gè)表返回的結(jié)果一

MYSQL的引擎不是一般的多,這次說(shuō)到的是MERGE,這個(gè)引擎有很多特殊的地方:

MERGE引擎類型允許你把許多結(jié)構(gòu)相同的表合并為一個(gè)表。然后,你可以執(zhí)行查詢,從多個(gè)表返回的結(jié)果就像從一個(gè)表返回的結(jié)果一樣。每一個(gè)合并的表必須有同樣的表定義。

MERGE存儲(chǔ)引擎在下面這種使用場(chǎng)合會(huì)最為有用,如果需要把日志紀(jì)錄不停的錄入MySQL數(shù)據(jù)庫(kù),并且每天、每周或者每個(gè)月都創(chuàng)建一個(gè)單一的表,而且要制作來(lái)自多個(gè)表的合計(jì)查詢,MERGE表這時(shí)會(huì)非常有效。然而,這項(xiàng)功能有局限性。你只能合并MyISAM表而且必須嚴(yán)格遵守相同的表定義的限制。雖然這看起來(lái)好像是一個(gè)大問(wèn)題,但是,如果你使用另外一種表類型(例如InnoDB),這種合并可能就不需要了。

其創(chuàng)建方法如下:

他將多個(gè)表在邏輯上當(dāng)作一個(gè)表來(lái)查詢。他建立后有兩個(gè)文件,?
.frm 表結(jié)構(gòu)定義?
.mrg union表的名字清單

兩個(gè)基本表:?
CREATE TABLE TEST_MERGE_1(?
ID INT(5) NOT NULL,?
VALUE VARCHAR(100) NOT NULL,?
PRIMARY KEY(ID)?
) ENGINE=MyISAM DEFAULT CHARSET=utf8?
CREATE TABLE TEST_MERGE_2(?
ID INT(5) NOT NULL,?
VALUE VARCHAR(100) NOT NULL,?
PRIMARY KEY(ID)?
) ENGINE=MyISAM DEFAULT CHARSET=utf8

MERGE表的建立:?
CREATE TABLE TEST_MERGE(?
ID INT(5) NOT NULL,?
VALUE VARCHAR(100) NOT NULL,?
PRIMARY KEY(ID)?
) ENGINE=MRG_MyISAM DEFAULT CHARSET=utf8 INSERT_METHOD=LAST UNION=(TEST_MERGE_1,TEST_MERGE_2) ;


1. 此表類似于SQL中的union機(jī)制。?
2. 此表結(jié)構(gòu)必須與基本表完全一致,包括列名、順序。UNION表必須同屬一個(gè)DATABASE。?
3. 基本表類型必須是MyISAM。?
4. 可以通過(guò)修改.mrg文件來(lái)修改MERGE表,每個(gè)基本表的名字占一行。注意:修改后要通過(guò)FLUSH TABLES刷新表緩存。?
5. 對(duì)基本表的更改可以直接反映在此表上。?
6. INSERT_METHOD的取值可以是: 0 不允許插入 FIRST 插入到UNION中的第一個(gè)表 LAST 插入到UNION中的最后一個(gè)表。(4.0之后可用)?
7. 定義在它上面的約束沒(méi)有任何作用,約束是由基本表控制的,例如兩個(gè)基本表中存在著同樣的一個(gè)Key值,那么在MERGE表中會(huì)有兩個(gè)一樣的Key值。

?

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

關(guān)于gorm框架的簡(jiǎn)單運(yùn)用

關(guān)鍵字: gorm mysql

來(lái)源:https://juejin.cn/post/6860252224930070536|?背景日志是?mysql?數(shù)據(jù)庫(kù)的重要組成部分,記錄著數(shù)據(jù)庫(kù)運(yùn)行期間各種狀態(tài)信息。mysql日志主要包括錯(cuò)誤日志、查詢?nèi)罩?、慢?..

關(guān)鍵字: mysql

mysql的一行記錄,最終肯定是存儲(chǔ)在磁盤上,也就是肉眼可見的文件上,今天我們的目標(biāo)很簡(jiǎn)單,就是看看它到底是怎么存的。當(dāng)然還有一個(gè)更重要的目標(biāo),就是以這個(gè)為引子,帶大家完全通過(guò)一手資料,來(lái)揭秘這個(gè)問(wèn)題的答案。所以大家閱讀...

關(guān)鍵字: mysql

跟著官方文檔 源碼 源文件三件套自己探索

關(guān)鍵字: mysql 存儲(chǔ)

什么Mysql的事務(wù)?事務(wù)的四大特性?事務(wù)帶來(lái)的什么問(wèn)題?你詳細(xì)了解過(guò)MVCC嗎?它是怎么工作的?

關(guān)鍵字: mysql 嵌入式

想進(jìn)大廠,mysql不會(huì)那可不行,來(lái)接受mysql面試挑戰(zhàn)吧,看看你能堅(jiān)持到哪里?

關(guān)鍵字: mysql 嵌入式

最近,在開發(fā)一個(gè)分庫(kù)分表中間件,由于功能需求,需要分析MySQL協(xié)議,發(fā)現(xiàn)網(wǎng)上對(duì)于MySQL協(xié)議分析的文章大部分都過(guò)時(shí)了,原因是分析的MySQL版本太低了。怎么辦?于是乎,我便硬著頭皮開始啃MySQL源碼,經(jīng)過(guò)兩個(gè)多月的...

關(guān)鍵字: mysql 嵌入式

想進(jìn)大廠,Mysql不會(huì)那可不行,來(lái)接受Mysql面試挑戰(zhàn)吧,看看你能堅(jiān)持到哪里?

關(guān)鍵字: mysql 嵌入式

Explain被稱為執(zhí)行計(jì)劃,在語(yǔ)句之前增加explain關(guān)鍵字,MySQL會(huì)在查詢上設(shè)置一個(gè)標(biāo)記,模擬MySQL優(yōu)化器來(lái)執(zhí)行SQL語(yǔ)句,執(zhí)行查詢時(shí),會(huì)返回執(zhí)行計(jì)劃的信息,并不執(zhí)行這條SQL。

關(guān)鍵字: mysql 嵌入式

什么是事務(wù)?事務(wù)是應(yīng)用程序中一系列嚴(yán)密的操作,所有操作必須成功完成,否則在每個(gè)操作中所作的所有更改都會(huì)被撤消。也就是事務(wù)具有原子性,一個(gè)事務(wù)中的一系列的操作要么全部成功,要么一個(gè)都不做。

關(guān)鍵字: mysql 嵌入式
關(guān)閉