国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

圖文詳解MySQL中兩表關聯的連接表如何創建索引

2024-07-24 12:51:49
字體:
來源:轉載
供稿:網友

本文介紹了MySQL中兩表關聯的連接表是如何創建索引的相關內容,分享出來供大家參考學習,下面來看看詳細的介紹:

問題介紹

創建數據庫的索引,可以選擇單列索引,也可以選擇創建組合索引。

遇到如下這種情況,用戶表(user)與部門表(dept)通過部門用戶關聯表(deptuser)連接起來,如下圖所示:


表間關系

問題就是,在這個關聯表中該如何建立索引呢?

針對該表,有如下四種選擇:

針對于user_uuid建立單列索引idx_user 針對于user_dept建立單列索引idx_dept 建立組合索引idx_user_dept,即(user_uuid,dept_uuid) 建立組合索引idx_dept_user,即(dept_uuid,user_uuid)

對關聯表的查詢,有如下四種情況:

-- 一、人員查所屬部門用and方式EXPLAIN SELECT d.dept_name,u.* FROM org_dept d,org_user u,org_dept_user duser WHERE u.user_uuid=duser.user_uuid AND d.dept_uuid=duser.dept_uuid AND u.user_code="dev1";-- 二、人員查所屬部門用join方式EXPLAIN SELECT d.dept_name,u.* FROM org_user u LEFT JOIN org_dept_user du ON u.user_uuid=du.user_uuid LEFT JOIN org_dept d ON du.dept_uuid=d.dept_uuid WHERE u.user_code="dev1";-- 三、部門查人員用and方式EXPLAIN SELECT d.dept_name,u.* FROM org_dept d,org_user u,org_dept_user du WHERE u.user_uuid=du.user_uuid AND d.dept_uuid=du.dept_uuid AND d.dept_code="D006";-- 四、部門查所屬人員用join方式EXPLAIN SELECT d.dept_name,u.* FROM org_dept d LEFT JOIN org_dept_user du ON d.dept_uuid=du.dept_uuid LEFT JOIN org_user u ON u.user_uuid=du.user_uuid WHERE d.dept_code="D006";

測試驗證

一.人員查所屬部門用and方式

1.1 關聯表無索引


1.2 單索引 Idx_dept


1.3 單索引 Idx_user


1.4 組合索引 Idx_dept_user


1.5 組合索引 Idx_user_dept


1.6 所有都建立上


二 、人員查所屬部門用join方式

2.1 關聯表無索引

2.2 單索引 Idx_dept

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 文水县| 平遥县| 余庆县| 高碑店市| 巨野县| 周口市| 务川| 依兰县| 乐山市| 伊宁市| 高阳县| 黄大仙区| 永年县| 乌拉特中旗| 新昌县| 韶山市| 茌平县| 永修县| 阿拉善左旗| 河曲县| 治多县| 平邑县| 屯留县| 仲巴县| 宜章县| 永和县| 交城县| 磐安县| 西乌珠穆沁旗| 张家口市| 吉林省| 河东区| 故城县| 铜山县| 肇东市| 平遥县| 安陆市| 施秉县| 隆子县| 海林市| 黄平县|