99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

student、sc、course 三張表講透 SQL:建表、查詢與優(yōu)化

student、sc、course 三張表講透 SQL:建表、查詢與優(yōu)化 簡介這是一份配合《數(shù)據(jù)庫系統(tǒng)概論》課程的SQL建表與數(shù)據(jù)插入練習文檔面向正在學(xué)習數(shù)據(jù)庫原理與SQL基礎(chǔ)操作的學(xué)生。PDF內(nèi)完整給出了student、course、sc三張經(jīng)典表的建表語句包含主鍵、唯一約束、默認值及外鍵關(guān)聯(lián)并附帶覆蓋學(xué)生選課場景的示例插入數(shù)據(jù)可幫助讀者理解關(guān)系模型、參照完整性及SC復(fù)合主鍵的設(shè)計思路。整個壓縮包僅含1個PDF文件大小48KB輕量易用適合課前預(yù)習、實驗參考或考前快速復(fù)習。文檔將創(chuàng)建數(shù)據(jù)庫、建表、插入數(shù)據(jù)與更新預(yù)修課程學(xué)分等步驟按順序拆解并在course表插入中特別說明了外鍵約束下不能一次性插入的原因便于讀者避開常見操作誤區(qū)。目前已有1907人學(xué)習下載對初學(xué)數(shù)據(jù)庫系統(tǒng)概論、需要動手搭建練習環(huán)境的學(xué)習者具有直接參考價值。1. 數(shù)據(jù)庫系統(tǒng)概論里的 student、sc、course一套練習表為什么能講透 SQL數(shù)據(jù)庫系統(tǒng)概論課程里流傳最廣的一套SQL練習就是用 student、sc、course 這三張表反復(fù)折騰查詢很多學(xué)校的實驗課、期末復(fù)習題、甚至面試前突擊都在用它。這套表的數(shù)據(jù)量不大結(jié)構(gòu)卻把主鍵、外鍵、多對多關(guān)系、聚合、連接、子查詢這些核心概念全串起來了比去 LeetCode 刷零散題目要完整得多。網(wǎng)上流傳的配套 PDF 往往只給題目和答案缺了建表腳本和邊界情況的說明新手拿到手第一反應(yīng)是“表長什么樣”都不知道。我按最常見的教材結(jié)構(gòu)把整套環(huán)境重建一遍從建庫到驗證一條龍講清楚學(xué)生能照著跑準備 SQL 面試的能當復(fù)習提綱想自己出練習題的也能直接參考這套設(shè)計。2. 先建庫再建表student、sc、course 的結(jié)構(gòu)設(shè)計與建表 SQL2.1 三張表的字段設(shè)計外鍵怎么連、主鍵怎么定先看這套表的數(shù)據(jù)模型。student 表存學(xué)生基本信息course 表存課程信息sc 表是學(xué)生選課成績表用來連接前兩者。之所以需要 sc 這張中間表是因為一個學(xué)生可以選多門課一門課也可以被多個學(xué)生選學(xué)生和課程之間是多對多關(guān)系直接在一個表里加字段會造成大量數(shù)據(jù)冗余和更新異常。sc 表把學(xué)號和課程號各存一條記錄再加上成績字段就把多對多關(guān)系拆成了兩個一對多關(guān)系。student 表的常見字段是學(xué)號、姓名、性別、年齡、系別主鍵用學(xué)號 sno。course 表的主鍵是課程號 cno同時會有一個 cpno 字段表示先修課程號這個字段指向課程表自身的主鍵形成自引用外鍵用來做“查先修課”這類的遞歸查詢練習。sc 表的主鍵是 (sno, cno) 聯(lián)合主鍵sno 和 cno 分別引用 student 和 course 的主鍵grade 字段存百分制成績。這個設(shè)計的巧妙之處在于兩個字段的聯(lián)合主鍵能防止同一學(xué)生同一課程出現(xiàn)兩條重復(fù)選課記錄這是數(shù)據(jù)完整性約束里的典型考點。練習時還會用到 cpno 為 NULL 的“沒有先修課”的記錄這就把 SQL 里的 NULL 處理難題也帶出來了。字段類型也要留意學(xué)號和課程號雖然是數(shù)字但常見教材把它們定義成 CHAR 而不是 INT目的是讓前導(dǎo)零能保留也方便練習字符串比較。2.2 標準建表腳本MySQL 與 SQL Server 的語法差異很多初學(xué)者從 PDF 里抄答案時發(fā)現(xiàn)在自己電腦上建表總是報錯原因往往是教材示例用的 SQL Server 語法而本機裝的是 MySQL。兩種數(shù)據(jù)庫的建表語法大體相似但在字符集、自增列、外鍵約束這些細節(jié)上有差異。下面給出兩套腳本先看 MySQL 版本這也是目前自學(xué)環(huán)境最常見的配置。CREATE DATABASE IF NOT EXISTS school DEFAULT CHARSET utf8mb4; USE school; CREATE TABLE student ( sno CHAR(9) PRIMARY KEY, sname VARCHAR(20) NOT NULL, ssex CHAR(2) DEFAULT 男, sage SMALLINT, sdept VARCHAR(20) ) ENGINEInnoDB; CREATE TABLE course ( cno CHAR(4) PRIMARY KEY, cname VARCHAR(40) NOT NULL, cpno CHAR(4), ccredit SMALLINT ) ENGINEInnoDB; CREATE TABLE sc ( sno CHAR(9) NOT NULL, cno CHAR(4) NOT NULL, grade DECIMAL(5,1), PRIMARY KEY (sno, cno), FOREIGN KEY (sno) REFERENCES student(sno), FOREIGN KEY (cno) REFERENCES course(cno) ) ENGINEInnoDB;這段腳本里幾個參數(shù)要單獨說明。DEFAULT CHARSET utf8mb4 是為了讓中文姓名和課程名正常存儲如果使用默認的 latin1 字符集插入中文時會變成亂碼或者直接報錯utf8mb4 比 utf8 多支持 emoji 等四字節(jié)字符對練習環(huán)境來說更保險。表引擎指定 InnoDB是因為外鍵約束只有 InnoDB 支持MyISAM 引擎雖然查詢快但建外鍵時 MySQL 會靜默忽略不報錯也不生效這是最隱蔽的一個翻車點。sage 用 SMALLINT 而不是 INT是教材里的經(jīng)典設(shè)計用來讓大家理解“夠用就好”的字段長度設(shè)計思路。grade 用 DECIMAL(5,1)意思是總長度 5 位、小數(shù) 1 位最高能存 999.9百分制成績足夠用而且能保留一位小數(shù)方便練習 AVG 聚合時看到非整數(shù)值。如果是 SQL Server 環(huán)境比如學(xué)校機房或者公司里的老項目建表腳本要微調(diào)。SQL Server 不區(qū)分 utf8mb4默認就是在排序規(guī)則屬性里處理中文自增列需要 IDENTITY 關(guān)鍵字CHAR 字段在 SQL Server 里默認非 Unicode插入中文要改成 NCHAR 或者設(shè)置合適的排序規(guī)則。CREATE DATABASE school; GO USE school; GO CREATE TABLE student ( sno CHAR(9) PRIMARY KEY, sname NVARCHAR(20) NOT NULL, ssex NCHAR(1) DEFAULT N男, sage SMALLINT, sdept NVARCHAR(20) ); GO CREATE TABLE course ( cno CHAR(4) PRIMARY KEY, cname NVARCHAR(40) NOT NULL, cpno CHAR(4), ccredit SMALLINT ); GO CREATE TABLE sc ( sno CHAR(9) NOT NULL, cno CHAR(4) NOT NULL, grade DECIMAL(5,1), PRIMARY KEY (sno, cno), FOREIGN KEY (sno) REFERENCES student(sno), FOREIGN KEY (cno) REFERENCES course(cno) ); GO這里把姓名、系別、課程名都換成了 NVARCHAR原因很實在SQL Server 的 VARCHAR 只能存英文字符N 前綴類型才能存中文給 ssex 字段加 DEFAULT N男 是因為 SQL Server 默認值里如果直接寫中文字符常量在有些中文排序規(guī)則下會報“對象名無效”一類的怪異錯誤實測最穩(wěn)的方式就是加 N 前綴。用了 GO 分隔批次是因為 SQL Server 的 CREATE DATABASE 之后必須 USE 切換上下文如果兩個語句在同一個批次里執(zhí)行后面的 CREATE TABLE 可能仍然被解析到 master 庫。這塊屬于 SQL Server 特有的玄學(xué)問題按上面分批次寫就不會出錯。2.3 插入練習數(shù)據(jù)覆蓋基礎(chǔ)查詢需要的典型取值建完表之后必須插入數(shù)據(jù)才能練習。數(shù)據(jù)量不用大但要覆蓋邊界情況NULL 成績、先修課缺失、同系別多人、男女都有、成績重復(fù)這些都會在后續(xù)查詢練習里反復(fù)用到。下面這套插入數(shù)據(jù)是經(jīng)典教材里的標準樣本數(shù)值我按常用版本保持基本一致。INSERT INTO student (sno, sname, ssex, sage, sdept) VALUES (201215121, 李勇, 男, 20, CS), (201215122, 劉晨, 女, 19, CS), (201215123, 王敏, 女, 18, MA), (201215125, 張立, 男, 19, IS); INSERT INTO course (cno, cname, cpno, ccredit) VALUES (1, 數(shù)據(jù)庫, NULL, 4), (2, 數(shù)學(xué), NULL, 2), (3, 信息系統(tǒng), 1, 4), (4, 操作系統(tǒng), 6, 3), (5, 數(shù)據(jù)結(jié)構(gòu), 7, 4), (6, 數(shù)據(jù)處理, NULL, 2), (7, PASCAL語言, 6, 4); INSERT INTO sc (sno, cno, grade) VALUES (201215121, 1, 92), (201215121, 2, 85), (201215121, 3, 88), (201215122, 2, 90), (201215122, 3, 80), (201215123, 2, 85), (201215123, 1, NULL);這段插入腳本里有兩處需要細看。course 表里課程 3 的 cpno 是課程 1課程 5 的 cpno 是課程 7形成了一個有向的“先修課鏈條”練習自連接時可以查“間接先修課”這類題目。sc 表里最后一條記錄 grade 為 NULL表示王敏選了數(shù)據(jù)庫課但還沒出成績這就是聚合函數(shù)和 WHERE 條件練習里最容易出錯的地方COUNT(grade) 會忽略 NULL而 COUNT(*) 不會。INSERT 語句用多值逗號分隔語法比逐條 INSERT 效率高很多而且一旦中間某行出錯整個語句會回滾不會出現(xiàn)“插了一半”的臟數(shù)據(jù)。數(shù)據(jù)插入后建議先跑兩條驗證語句確認環(huán)境可用。SELECT COUNT() FROM student; 應(yīng)該返回 4SELECT COUNT() FROM sc; 應(yīng)該返回 7。如果數(shù)字對不上優(yōu)先檢查是否漏跑了某個批次或者外鍵約束攔截了部分插入。3. 練習題的梯度設(shè)計從單表查詢到窗口函數(shù)3.1 第一梯度單表查詢、排序與去重表建好、數(shù)據(jù)插完就可以開始真正的練習。第一梯度只涉及單張表目標是練 SELECT 的基礎(chǔ)功投影、選擇、排序、去重。這類題目在面試里看著簡單但很多人寫出來的 SQL 在邊界情況下是錯誤的尤其是去重和 NULL 處理。先看一個最基礎(chǔ)的查詢查所有學(xué)生的學(xué)號和姓名。這道題沒有難度但能驗證表結(jié)構(gòu)是否正常。SELECT sno, sname FROM student;接著看一個稍微有考點的題目查詢所有學(xué)生的系別。如果直接寫 SELECT sdept FROM student結(jié)果里會出現(xiàn)重復(fù)的 CS。要得到唯一的系別列表得去重。SELECT DISTINCT sdept FROM student;DISTINCT 在這里的語義是“對查詢結(jié)果整體去重”也就是說只有兩行所有選中列的值都相同才合并。它作用于整個 SELECT 的投影列表而不是只作用于緊挨著的那個字段。很多人以為 SELECT DISTINCT sname, sdept 的意思是“只對 sname 去重保留 sdept”實際上它是把 (sname, sdept) 作為一個整體判斷重復(fù)。這是一個高頻面試題也解釋了為什么同樣一句 DISTINCT 在不同組合列下結(jié)果差異巨大。第二梯度之前還要過一個排序練習查全體學(xué)生名單按年齡降序排列。SELECT sno, sname, sage FROM student ORDER BY sage DESC;ORDER BY 的執(zhí)行順序在 SQL 邏輯中排在 SELECT 之后所以它可以使用 SELECT 列表里的別名比如 ORDER BY 年齡。這個順序問題很多人混淆實際上 SQL 語句的書寫順序是 SELECT → FROM → WHERE → GROUP BY → HAVING → ORDER BY但邏輯執(zhí)行順序是 FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY。搞清楚這個順序后面理解“為什么 WHERE 里不能使用別名”才不會靠死記硬背。3.2 第二梯度多表連接、聚合與分組第二梯度是這套練習表的重頭戲也是 SQL 能力分水嶺。連接查詢要把兩張或多張表按條件拼接聚合查詢則把多行匯總成一行。兩者經(jīng)常組合出現(xiàn)。最常見的連接練習查詢每個學(xué)生的選課成績需要 student 表和 sc 表通過 sno 連接。SELECT student.sno, sname, cno, grade FROM student, sc WHERE student.sno sc.sno;這是隱式連接寫法教材里用得最多但實際項目里我更推薦顯式 JOIN 寫法結(jié)構(gòu)更清晰也更容易排查漏連接條件的問題。SELECT s.sno, s.sname, sc.cno, sc.grade FROM student s JOIN sc ON s.sno sc.sno;這兩條 SQL 邏輯等價但顯式寫法把連接條件從 WHERE 中分離出來WHERE 里只留過濾條件。這種拆分的實際意義是當查詢超過三張表時隱式連接特別容易漏寫一個連接條件導(dǎo)致產(chǎn)生笛卡爾積結(jié)果行數(shù)爆炸到幾十萬條這就是俗稱的“翻車現(xiàn)場”排查時還不好定位。顯式 JOIN 配合縮進每個連接關(guān)系一眼就能看全。連接之后接聚合查詢每門課的選課人數(shù)和平均成績。SELECT cno, COUNT(*) AS cnt, AVG(grade) AS avg_grade FROM sc GROUP BY cno;這段 SQL 的執(zhí)行順序是先 FROM sc 拿到全表GROUP BY cno 把相同課程號的記錄分到一組然后 SELECT 對每組執(zhí)行 COUNT 和 AVG。這里有一個關(guān)鍵細節(jié)AVG(grade) 會自動忽略 NULL所以王敏那條沒有成績的記錄不會拉低平均值。如果想把 NULL 當作 0 參與平均就得先寫 CASE WHEN grade IS NULL THEN 0 ELSE grade END 把 NULL 轉(zhuǎn)換掉但這在實際業(yè)務(wù)中是否合理要看場景一般成績表里 NULL 代表“缺考/未出分”忽略比當 0 處理更符合業(yè)務(wù)語義。再進階一步查詢選了 2 門及以上課程的學(xué)生學(xué)號。這要用 HAVING 對分組結(jié)果做過濾。SELECT sno FROM sc GROUP BY sno HAVING COUNT(*) 2;HAVING 和 WHERE 的區(qū)別必須在這里說透WHERE 在分組之前過濾行HAVING 在分組之后過濾組。同一個條件寫在 WHERE 和寫在 HAVING 里語義完全不同。比如查出平均成績大于 85 的課程AVG(grade) 85 這個條件只能放在 HAVING 里因為它是“組”的特征不是“行”的特征。很多初學(xué)者把聚合條件誤寫在 WHERE 里報錯就是因為沒理解這個執(zhí)行順序。3.3 第三梯度子查詢、EXISTS 與窗口函數(shù)第三梯度是進階內(nèi)容也是 PDF 練習里區(qū)分“會寫”和“寫得優(yōu)雅”的部分。子查詢分相關(guān)子查詢和非相關(guān)子查詢兩類。非相關(guān)子查詢的結(jié)果不依賴外層查詢先執(zhí)行一次即可相關(guān)子查詢每處理一行都要執(zhí)行一次子查詢性能差異很大。經(jīng)典題目查詢選修了課程 1 且成績高于該課程平均分的學(xué)生學(xué)號。SELECT sno FROM sc WHERE cno 1 AND grade ( SELECT AVG(grade) FROM sc WHERE cno 1 );這個子查詢是典型的非相關(guān)子查詢內(nèi)層執(zhí)行一次得到課程 1 的平均分外層再逐行比較。注意如果 AVG 結(jié)果帶多位小數(shù)和外層 grade 比較時不會因類型問題出錯因為 MySQL 會按 DECIMAL 精度自動比較。這道題練習的價值在于它要求先理解聚合結(jié)果是標量值然后才能把它當作 WHERE 的右值。再來看 EXISTS 子查詢這也是 SQL 面試題的常駐嘉賓。查出所有選了課程 2 的學(xué)生姓名。SELECT sname FROM student s WHERE EXISTS ( SELECT 1 FROM sc WHERE sc.sno s.sno AND sc.cno 2 );EXISTS 子查詢只關(guān)心“有沒有返回行”不關(guān)心返回什么列所以子查詢里寫 SELECT 1 是業(yè)界慣例比 SELECT * 性能略優(yōu)且語義清晰。這個查詢是相關(guān)子查詢對 student 表每一行都要執(zhí)行一次子查詢但數(shù)據(jù)庫優(yōu)化器通常會把它改寫成 JOIN 或 semi-join 來提升性能。練習時可以把 EXISTS、IN、JOIN 三種寫法都試一遍觀察執(zhí)行計劃差異這是理解優(yōu)化器行為的很好素材。窗口函數(shù)是近幾年 SQL 面試的高頻考點這套表同樣能練。比如查每門課成績排名前 2 的學(xué)生。SELECT cno, sno, grade FROM ( SELECT cno, sno, grade, ROW_NUMBER() OVER (PARTITION BY cno ORDER BY grade DESC) AS rk FROM sc WHERE grade IS NOT NULL ) t WHERE rk 2 ORDER BY cno;窗口函數(shù)的邏輯是OVER 子句定義窗口范圍PARTITION BY 劃分組ORDER BY 組內(nèi)排序ROW_NUMBER() 在窗口內(nèi)生成序號。和 GROUP BY 不同的是窗口函數(shù)不會把多行合并成一行每行仍然保留自己的身份。這個特性讓“分組 top N”這類查詢變得非常簡潔。注意內(nèi)層先 WHERE grade IS NOT NULL 過濾掉 NULL 成績否則排序時空值會默認排最前面結(jié)果就錯了。3.4 練習答案的驗證方式用 EXPLAIN 看執(zhí)行計劃光寫出能跑出結(jié)果的 SQL 不算完還得知道它是怎么跑的。數(shù)據(jù)庫提供了 EXPLAIN 命令來查看執(zhí)行計劃這是從“會寫 SQL”到“能調(diào) SQL”的必經(jīng)一步。以 MySQL 為例EXPLAIN SELECT s.sno, s.sname, sc.grade FROM student s JOIN sc ON s.sno sc.sno WHERE sc.cno 1;執(zhí)行計劃里最需要關(guān)注的是 type 列和 rows 列。type 顯示訪問表的方式從好到差依次是 system、const、eq_ref、ref、range、index、ALL。如果看到 ALL說明這條 SQL 正在做全表掃描。rows 列是預(yù)估掃描行數(shù)兩張表 join 的最終掃描行數(shù)異常大時要檢查外鍵列上有沒有索引。sc 表的 sno 和 cno 列如果沒建索引JOIN 就會退化成嵌套循環(huán)全表掃數(shù)據(jù)量小的時候感覺不到到了生產(chǎn)環(huán)境幾百萬行就徹底卡死了。做練習時每寫完一道題都順手把執(zhí)行計劃拉出來看一眼。等把 system→const→ref→range→ALL 這幾檔都親眼見過一遍才算真正對 SQL 優(yōu)化有了體感。到這一步student、sc、course 這套練習表的價值才算被完全榨干——它不僅教你寫 SQL還教你診斷 SQL。4. 做這套練習常見的 5 個坑從建表失敗到結(jié)果對不上4.1 主鍵重復(fù)與 NULL插入數(shù)據(jù)時的第一道坎現(xiàn)象執(zhí)行 INSERT 語句報錯提示 duplicate entry 或者不能為 NULL。原因聯(lián)合主鍵的任意重復(fù)都會觸發(fā)沖突比如向 sc 表重復(fù)插入 (201215121, 1) 這條選課記錄。另外student 表的 sno 是主鍵插入 NULL 也會被拒絕但 sc 表的 sno 和 cno 是外鍵同時又是聯(lián)合主鍵的一部分如果這兩列有一個為 NULLInnoDB 對主鍵列有隱式 NOT NULL 約束同樣報錯。解決插入前先用 SELECT 確認數(shù)據(jù)是否存在。習慣性在插入腳本里加 INSERT IGNORE 或者 ON DUPLICATE KEY UPDATE 確實能跳過錯誤但練習場景不建議這么做因為這會掩蓋數(shù)據(jù)本身的重復(fù)問題。更推薦的方法是直接面對報錯通過 SELECT sno, cno, COUNT() FROM sc GROUP BY sno, cno HAVING COUNT() 1 查重復(fù)數(shù)據(jù)再決定保留哪一條。4.2 字符集與排序規(guī)則中文亂碼的根源現(xiàn)象插入中文后查詢顯示亂碼或者 CREATE TABLE 直接報錯字符集不識別。原因MySQL 默認字符集可能是 latin1中文無法存儲。SQL Server 則可能是排序規(guī)則不匹配導(dǎo)致數(shù)據(jù)庫兼容級別或排序規(guī)則沖突。解決MySQL 建庫時顯式指定 DEFAULT CHARSET utf8mb4并且連接字符串里也要加上 characterEncodingutf8 或 utf8mb4。一個容易被忽略的坑是即使數(shù)據(jù)庫和表的字符集都對了如果客戶端連接的字符集不對插入時仍會出現(xiàn)亂碼。先執(zhí)行 SHOW VARIABLES LIKE character_set%; 看當前會話的字符集再把連接參數(shù)統(tǒng)一。SQL Server 那邊建庫時把排序規(guī)則指定為 Chinese_PRC_CI_AS 基本可以一勞永逸。4.3 外鍵約束與刪除順序先刪 sc 還是先刪 student現(xiàn)象執(zhí)行 DELETE FROM student WHERE sno201215121; 報錯提示 foreign key constraint fails。原因sc 表里有引用這個學(xué)號的記錄而 sc 表的外鍵約束默認行為是 NO ACTION即存在子記錄時不允許刪除父記錄。解決先刪子表再刪父表。正確順序是 DELETE FROM sc WHERE sno201215121; 然后 DELETE FROM student WHERE sno201215121;。這個順序問題的價值不僅在于完成刪除操作它本身就是關(guān)系模型里“引用完整性”的絕佳教學(xué)案例。實際業(yè)務(wù)中還有一種做法是給外鍵加上 ON DELETE CASCADE讓數(shù)據(jù)庫自動刪子記錄但這在生產(chǎn)環(huán)境非常危險一不小心就級聯(lián)刪掉大量業(yè)務(wù)數(shù)據(jù)我一般建議顯式控制刪除順序而不是依賴級聯(lián)。4.4 連接條件漏寫笛卡爾積的翻車現(xiàn)場現(xiàn)象多表連接查詢返回的結(jié)果行數(shù)異常多比如 student 4 行和 sc 7 行連接后返回 28 行。原因連接條件沒寫或者寫錯數(shù)據(jù)庫把兩表做了笛卡爾積每行和另一表的每行配對。解決連接查詢時先確認結(jié)果行數(shù)是否等于符合業(yè)務(wù)邏輯的行數(shù)。經(jīng)驗判斷標準是如果多表連接沒有 WHERE 或 JOIN ON 條件返回行數(shù)是各表行數(shù)乘積必然有問題。連接條件漏寫時數(shù)據(jù)庫不會報錯因為笛卡爾積在語法上是合法的這是最讓人頭疼的地方。實踐中寫多表查詢時先分別跑一遍 SELECT COUNT(*) FROM 各表估算出預(yù)期結(jié)果行數(shù)范圍再執(zhí)行連接查詢。另外養(yǎng)成每張表用別名、JOIN 條件顯式寫在 ON 子句里的習慣能顯著降低漏寫概率。4.5 聚合與非聚合混用GROUP BY 的經(jīng)典報錯現(xiàn)象執(zhí)行 SELECT sno, cno, AVG(grade) FROM sc GROUP BY sno; 報錯提示 cno 不在 GROUP BY 子句中。原因SQL 標準要求 SELECT 列表中出現(xiàn)的非聚合列必須全部出現(xiàn)在 GROUP BY 中。這是因為分組后每組只有一行非聚合列如果不在分組鍵里數(shù)據(jù)庫不知道該取組內(nèi)哪行的值。MySQL 的 ONLY_FULL_GROUP_BY 模式默認開啟所以直接報錯如果關(guān)掉這個模式雖然能執(zhí)行但返回的 cno 是組內(nèi)隨機一行結(jié)果不可預(yù)測。解決搞清楚查詢意圖。如果確實想查每個學(xué)生的學(xué)號和他每門課的成績就不該用 GROUP BY如果只想查每個學(xué)生平均分SELECT 里就不該出現(xiàn) cno。這個報錯其實是數(shù)據(jù)庫在保護你比暗中返回隨機值好得多。練習時遇到這種錯誤先停下來理清“我要的是明細還是匯總”再動手改 SQL是最快的路徑。5. 把練習成果接到真項目驗證方法、索引設(shè)計與一條實用技巧5.1 用索引設(shè)計與執(zhí)行計劃對比來驗證練習效果練習做完后建議做一個加索引前后的對比實驗。以 sc 表為例在不建任何輔助索引的情況下執(zhí)行按 cno 過濾的查詢EXPLAIN 結(jié)果會顯示 typeALL 全表掃描。然后手動加一個索引CREATE INDEX idx_sc_cno ON sc(cno);再執(zhí)行同樣的查詢EXPLAIN 里 type 會變成 refrows 預(yù)估數(shù)明顯下降。這個對比就是把前面練習里學(xué)到的東西真正用到性能優(yōu)化上的關(guān)鍵一步。實際業(yè)務(wù)中聯(lián)合索引的設(shè)計比單列索引更值得關(guān)注。sc 表最常見的查詢模式是按 (sno, cno) 查成績或者按 cno 查選課名單。如果業(yè)務(wù)偏向前者聯(lián)合主鍵已經(jīng)覆蓋如果后面要頻繁按 cno 查單建 idx_sc_cno 就能避免每次回表。5.2 把三張表遷移到真實業(yè)務(wù)場景邊界在哪里student、sc、course 畢竟是教學(xué)模型遷移到真實項目時有三個明顯的邊界要注意。一是數(shù)據(jù)量生產(chǎn)環(huán)境單表百萬行起步這套練習表沒有分區(qū)、沒有數(shù)據(jù)生命周期管理直接照搬會有性能問題。二是缺失審計字段真實業(yè)務(wù)表幾乎都要有 create_time、update_time、操作人這幾個字段教學(xué)表里完全沒有上線前要補。三是沒有軟刪除和狀態(tài)字段真實業(yè)務(wù)不會物理刪除記錄而是用 status 字段標記有效性練習表的 DELETE 操作要改成 UPDATE status。一個比較實用的落地方式是把這三張表當作一個“最小可運行的數(shù)據(jù)模型”在公司內(nèi)部做技術(shù)分享或者新人培訓(xùn)時用來演示慢 SQL 優(yōu)化和連接查詢原理。數(shù)據(jù)量小、字段簡單、問題復(fù)現(xiàn)快比拿生產(chǎn)庫演練安全得多。我有一個習慣每次講 SQL 優(yōu)化之前先在本地用這套表造 10 萬行數(shù)據(jù)然后故意寫幾條不帶 WHERE 的連接查詢讓新人親眼看到全表掃描導(dǎo)致查詢時間從毫秒級變成秒級再讓他們自己用 EXPLAIN 定位問題。這種直觀對比比講半小時理論都有用。希望幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
www.婷婷五月天| 国产精品18久久久| 国产九九一区二区三区| 综合九九久久| 九九热最新| 色约约视频一区二区三区四区五区| 99.色| 99热这里都是精品| 人妻操在线看| 99爱视频精品在线观看| 婷婷综合中文| 婷婷五月天网址| 午夜成人天堂久久无码日韩久久| 91九色精品熟女内射| 97亚洲色 torrent magnet| 五月婷婷综合视频| 五月激情网综合| 午夜激情久久| 大香蕉久久| 色情五月天se| 国内久久久精品99| 这里只有精品视频在线| 99热思思| 色婷婷五月基地在线| 在线看的免费网站| 五月天婷婷丁香基地在线观看| 婷婷五月激情的图片| 变态另类色图| 91干99| 97碰碰视频在线观看| 久操人妻| 九九色video| 日韩综合久| 香蕉久久国产AV一区二区| 五月天色色色| 婷婷刺激综合| 香蕉人在线香蕉人在线 | 丁香五月影视| 婷婷情色五月| 中文字幕日产A片在线看| 99热在线观看免费| 日韩好吊操| 国外亚洲成AV人片在线观看| 这里只有精品96| 99无码精品| 久热人妻| 热久精品| 深爱1激情网| 操99| 做爱夜夜干天天操| 97操视频| 人人草成人视频| 91超碰九色| 久久久久9久无码视频| 91人人爽狠狠狠| 亚洲五月天激情| 婷婷婷婷色| 久久久中文| 午夜九九九九九九九九九九九九九| av大香蕉| 色香蕉精品五夜婷| 少妇AB又爽又紧无码网站| 婷婷99狠狠| 色99欧洲色19| 99热成人| 老司机日日夜夜青草| 五月天激情视频五月天| 精品久久这里热66| 中文字幕 码精品视频网站| 激情五月天电影| 国产永久一二一起草| 婷婷五月天丁香久久| 丁香六月激情综合| 婷婷综合五月| 激情综合色婷婷啪啪五月天| 97人碰人操| 婷婷五月情| 国产精品爽爽久久久久久| 色亚洲激情| 久久人妻伦理| 五月天成人免费视频| 人人播| 伊人久久大香蕉网| 成人av在线电影| 九九色欲网| 九九综合久久| 男女激情久久| 婷婷色基地在线看| 99热精品网| 狠狠综合色网| 97视频91| 久久丝丝热| 玖玖婷婷精品| 99久久婷婷国产综合| 色五月婷婷中文字幕在线观看 | 色丁香五月综合网| 99精品爱| 五月丁香六月婷婷欧美综合| 久久婷婷久久| 色墦五月丁香| 超碰免费人人肏| 天堂综合久久| 色婷婷五月天天天做| 婷婷六月丁香久| 天天日天天干天天插天天射| 超碰成人免费| 欧美在线视频99| 玖玖爱伊人网| 久久亚洲天堂| WWW、日本色丁香、co m| 春色激情第四色| 婷婷五月天电影区小说区| www.精品99| 亚洲激情网| 日本二级毛片二级毛片| 五月丁香成人网| 亚洲综合在线伊人婷| 亚洲综合激情五月久久| 人人草人人视| 五月天婷婷激情小说电影| 丁香五月婷婷啪啪视频| 婷婷五月丁香av网站| 狠狠色婷婷六月激情网| 九九热在线视频| 国产97在线日韩亚洲女人被黑人巨大| 五月婷婷丁香啪啪| 伊人网啪啪| 国产精品涩涩涩视频网站| 成人做爰高潮A片免费视频| 91在线人| 久久婷婷在线| 丁香五月天社区| 欧美操综合| 狠狠操天天操综合| 激情五月天偷拍综合网| 玖玖色综合色| 婷婷丁香五月激情中文字幕版| 丁香五月成人网| 色色婷婷五月| 色噜噜狠狠色综合AV兰草影视| 色婷婷色五月天| 91人妻PORNY九色大屁股| 9在线9在线婷婷在线国产| 婷婷色播色五月五色五月天色妇| 久久激情五月婷婷| 91超碰人人操| 久久婷婷六月综合综合| 99色综合网| 激情五月天社区| 婷婷爱五月天| 色五月欧美| 丁香欧美| 26uuu成人网| 婷婷狠狠18禁久久| 国产三级秋霞| 综久久久| 色狠久| 日操夜操天天操不卡| 五月激情六月| 五月丁香在线| 丁香五月婷婷少妇| 91chinese在线| 亚洲一级色电影| 狠狠干无码| 2018夜夜草| 婷婷色播综合五月| 电影91久久久| 五月婷婷综合精品| 香蕉色色网| 天天做 天天爱| 欧美 日韩 人妻 高清 中文| 日韩九区| 色99视频| 国产一级婬片毛片| 人妻熟人中文字幕一区二区| 精品久久人妻热| 综合噜噜| 99色干| 99热综合在线| 久久五月天网| 99精品在这里| 亚洲综合无码| 婷婷五月综合网| 青996青| 激情第四色| 欧美人人女女精品综合五月天| 天天噜噜| 国产色视频网站2| 人人摸人人| 婷婷丁香成人五月天| 五月欧美丁香在线观看| 99热爱爱干干日| 啪啪综合| 色狠狠伊人久久五月丁香| 久热9| 日日鲁鲁夜夜爽爽| 丁香六月婷婷社区| 色色婷婷五月天| 99热99成人| 婷婷九月| 五月婷婷丁香网| 天天肏高清在线| 五月婷婷激情四月| 97人人看| XX色综合| 91要啪| 开心五月激情网| 色婷婷五月天| 日本色视| 婷激情五月天视频导航| 超碰在线个人观看| 久久婷婷影院| 思思热在线视频99| 91九色无码日韩 | 超碰精品在线| 思思 热 99| 婷婷五月在线影院| 欧美大道不卡| 天天操夜夜玩!| 99国产精品久久久久久久久久久 | 久久这里有精品| 色高清无码视频| 五月婷天堂视频| 亚洲六月色| 国产.亚洲.欧洲视频在线| 国产一级片| 五月天玖玖狠狠色色| 色婷婷影| 久久精品一区二区三区四区| 97色97干| 天天成人丁香美女AV| 久9精品| 久久99精品视频| 日日夜夜天天爽| 肏屄色播伊人97婷婷| 伊人久久艹| 久久成人人妻| 五月天自拍网| 亚洲欧美成人在线| 伊人五月婷婷国产视频| 秋霞少妇AV网站| 操逼三区| 第五色色色婷婷| 欧美在线视频99| 色色亚洲99com| 激情综合无码| 色色aⅤ網| 婷婷成人AV| 免费做A爰片77777| 99热在线精品观看| 5月婷婷五月天| site:hcxsz888.com| 色域五月丁香| 4399无码视频| 欧美激情综合色综合啪啪五月| 天天操天天爽天天爱| 99免费青青蜜臀| 国产成人一区二区三区在线观看| 丁香五月五月婷婷| 九九99免费理论| 天天干狠狠艹| 色情五月天A片| 久久xx| 婷婷性爱综合| 欧美色必爱| 日本欧美成人片AAAA| www.日本91| www.亭亭五月天| 久久er九九| 一本九九色| 中文字幕无码人妻少妇免费视频| 综合网色| 伊人五月天| 色五月激情| 99热这里只有精品搜| 人妻videos人妻高清| 五月丁香成人网| 精品在线网站| 久草 天堂| 丁香婷婷综合激情五月色| 在线日本www| 强辱丰满人妻HD中文字幕| 99精品视频免费观看| 激情婷婷另类| 欧美英丁香开心快乐六月天网| 日本www五月婷婷| 第四色色六月色综合| 开心五月综合激情网| 久久久jd| 91啪啪视频| 人妻有码乱操| 五月激情婷婷四射| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 在线播放成人| 婷婷五月网图片区| 五月婷婷激情| 六月五月丁香五月欧美| 婷婷色5月天在线。| 色性综合| 日本婷婷网| 久这里只有精品| 另类五月婷婷| 五月天a婷婷伊人| 在线VA视频| tingting五月天亚洲| WWW五月天| 国产精品色色666| 五月丁香怕啪啪| 就要爱综合| 丁香六月婷婷一区| 欧美五月丁香在线观看| 噜噜久| 天天色综合图片| 欧美成人A片AAA片在线播放| 欧美色97| 亚洲色另类| 五月丁香色婷婷| 久草热8精品视频在线观看| 欧美在线| 操婷婷基地| 五月婷婷日本| 久久中文人妻系列| 天天综合网网欲色| 99啪| 欧美黑人巨大性生话| 国产69久久久欧美黑人A片| 天堂成人A片永久免费网站| 99精彩视频网站在线| 第九色区AV在线| 男妓跪趴把舌头伸进我的嘴巴| 日本猛少妇色XXXXX猛叫| 666555。COm毛片| 影音先锋五月天婷婷丁香在线观看| 狠狠爱丁香婷| 黄桃AV无码免费一区二区三区| 婷婷五月激情基地| 啪到高潮激情丁香五月| 成人av播放| 日日噜噜夜夜狠狠久久丁香五月| 一本婷婷丁香久久| 激情综合色网| 天天成人丁香美女AV| 六月婷婷八月丁香| 成人做爰高潮A片免费视频| αV电影| 色碰碰视频| 色一情一乱一乱一区91Av| 五月天婷婷狂暴白浆| 久久婷婷激情四射五月天| 综合久| 久久午夜理论| 操逼六区| 婷久久高清| 久久多色| 草综合14| 情欲禁地| 久综合网| 日日爽日日| 99热这里是精品| 日日噜噜夜夜狠狠久久丁香五月| 99热播放| 久久久性爱视频| 婷婷九月| 狠干综合| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 狠狠色婷婷在线| 五月丁香六月激情综合欧美| 天天玩夜夜操| 先锋资源婷婷| 婷婷五月天堂一本在线| 国产精品美女久久久久AV超清| 人人操大| 五月天激情.com| 九九热这里| 成年视频免费观看| 另类综合婷婷五月天欧美视频| 91丨九色丨国产打屁股| 国产黄色一级片| 五月丁香婷色| 五月天播播| 综合久久伊人| 婷婷色网站| 亚洲激情网| 亚洲无码成人网| 婷婷色五月久久| 天天婷婷操| 丁香婷婷六月天| 色狠狠婷婷| 九九视频精品这里只有| 亚洲最大激情无码| 成人小说色图婷婷五月| 丁香六月成人网| 亚洲色婷婷| 日韩色久| 丁香婷婷色情| 第四色大香蕉| 人人摸人人干| 99九九视频精彩在线| 99精品22| WWW色色色COM| 伊人久久五月天| 婷婷97狠狠成人网站| 亚洲欧美成人在线| 久热无码| 久久婷婷青草五月天| 99精品一二三四视频| 九九九九九九九九九九九九九国产精品 | 日本99热| 99色啊| 女人天堂AV| 啊v视频在线观看| 久久九九@| 亚洲蜜乳AV| 五月婷婷六月少妇激情| 亚洲天堂九九九| 开心五月深爱五月丁香五月激情五月| 久久桃花网色婷婷| 五月久久丁香| 99视频在线啪| 五月丁香六月激情综合| 99热国产精品| 久操婷婷| 六月五月婷婷| 久草婷婷视频| WWW.桔色成人.COM| 中文字幕综合| 99热这里只有精品首页| 99久久国产成人精品| 激情综合五月天| 婷婷激情五月吧| 九九热在线视频| 综合欧美五月婷婷| 色色色色欧美| 噜噜视频| 日韩成人精品中文字幕| 99国产精品白浆在线观看免费 | 婷婷色在线| 五月天综合在线| 色色色色网站| 色视五月天婷婷| 婷婷五月丁香青青草在线| 囯产精品一品二区三区| 丁香五月婷婷亚洲天堂| 影音先锋色婷婷| 国产亚洲色婷婷99精品| 日本三级日本黄色| 粉嫩av蜜桃av蜜臀av| www.久久99| 99久热| 色操b| 国产精自产拍久久久久久蜜| 激情婷婷五月天日本系列 | 五月天婷婷色情| 丁香五月色色| 91婷婷五月天综合视频| 婷婷五月丁香香蕉| 综合激情婷婷| 99热这里只有精品搜| 91精品又长又大又粗又爽又猛| 夜夜干夜夜操| www.成人婷婷综合| 色色色激情| 成人午夜天| 五月天婷婷亚洲| 91 九色 熟女| 婷婷五月色花丁香社区| 老司机伊人| 六月色国内综合| 性天堂久久| 国产乱妇无乱码大黄AA片| 婷婷五月视屏| sisi热国产| 狠狠 久久| 婷婷丁香五月激情| 天天日天天干天天爽| 久久综合丁香五月| 91精产一区三区免费观看| 99热精品在线播放| 久久99热这里只频精品6学生| 六月丁婷婷| WWW.久久久久久久久久久久久| 五月天色区| 日韩五月丁香| 成人欧美Va| 日韩久热| 久久婷婷六月综合综合| 丁香五月五月婷婷欧美大香蕉| 成人AV中文字幕| 亚洲瑟瑟精品在线| 亚洲综人色综网| 九九久久玖玖爱| 婷婷99狠狠| 99九九玖玖| 人妻尝试久久久久久久久久久久| 色一区高清| 久久婷婷五月综合啪| 精品久久久久成人码免费动漫| 欧美色99| 色99在线观看| 婷婷五月丁香六月天亚洲综合| 五月丁香六月激情综合网| 欧美色色日韩| 超碰成人影视| 亚洲色图欧美色图日本视频| 噜噜在线| 天天操婷婷| 91久久色| 色婷婷久久| 丁香婷婷十月| 天天干天天 亚洲| 婷婷激情中文综合| 97香蕉碰碰人妻国产欧美| 人操人人| 免费操超碰| 噢美99| 午夜性做爰电影| 超碰在线91| 国产97色在线 | 日韩| 91色情播放| 色宗合久久五月婷婷| 五月天快乐开心激情网| 深爱五月婷婷开心中文字幕| 99婷婷| 99热人人| 97超级免费无码| 男人操女人高潮91视频| 一二线视频 另类| 香蕉综合网| 久久婷婷综合五月天| 五月激情婷婷综合| 99热99色| 色婷婷五月综合| 激情久久综合| 五月婷丁香| 26uuu精品一区二区| 欧美在线干| 婷婷五月亚洲综合| 99热网站| 婷婷亚洲综合| 草草夜夜操| 影音先锋91网站在线观看| 岛国在线观看91| caop视频| 一区操| 丁香五月天婷婷91| 九九热99视频| 性韩日色婷婷五月天激情啪啪XXX| www.zbzhongsen.com| 久久九九99| 婷婷丁香77777| 草美女在线观看视频在线播放 | av一区二区电影免费在线观看| 淫视馆av三区| 超碰国产在线观看| 日本91在线| 国产韩日亚洲美州欧亚综合在线| 激情99热| 99精品免费欧美小视频 | av在线超清中文| 五月婷婷色丁香| 热久久视频99| 激情六月天| 亚洲AV成人精品日韩在线播放| 五月天色区| 国产69精品久久久久999小说| 色就色94欧美setu| 人人操操| 丁香五月婷婷少妇| 久久五月综合| 色色五月丁香婷婷| 福利视频在线播放| 亚洲激情| 久久五月丁香婷婷| 都市激情小说婷婷| 久久9精品| 99精品视频在线观看| 婷婷丁香色五月天| 狠狠爱婷婷爱| 五月丁香网中文字幕| 亚美欧色影院| 激情开心五月天| 天天色中文字幕女优AV| 亚洲一区国产传媒| 丁香六月婷婷高清| 超碰高清在线| 久久婷.com| 天天插天天射| 亚洲AV免费国产电影| 91久久婷婷| 丁香五月亚洲综合| 色色婷婷丁香| 欧美一级a| 99热这里都是精品| 天天色域综合网| 色婷婷导航| 久久九九热re6这里有精品| 婷婷色啪| 久久A V无码视频| 久久ab| 亚洲综合视频八| 另类视频在线| 五月天色区| www五月| 91精产一区三区免费观看| 狠狠另类视频| 久久 婷婷 五月天| 婷婷综合久久综合| 韩国情人在线电视剧免费观看高清版全集 | 东北熟女视频99| 激情文学天天| 婷婷伊人久久| 无码一级片| 婷婷丁香五月激情中文字幕版| 亚洲成人无码网站| 超碰在线个人观看| 第四色婷婷最爱| YJLZZJLZZ亚洲乱熟无码| 婷婷9月天| 婷婷丁香社区网| 五月婷婷免费看| 五月天激情网图片| 五月婷婷综合网| 天天激情欧美美女| 五月美女婷婷风骚| 综合激情五月丁香| 五月婷婷丁香| 99久视频| 91爱啪啪| 超碰在线免费| nvrentiantang av| 综合一啪| 五月天综合影院| 亚洲欧洲中文日韩久久AV乱码 | 99在线观看精品| 久久久日韩特色特黄AAAA| 色噜噜,噜噜色| 丁香五月久久| 996er热| 六月激情综合| 东北黄色一级| 99re8这里只有精品99re8热视频| 97成人丁香| 天天射天天射一道本日本社区| 亚洲视频在线观看| 五月丁香婷婷网网网网| 深爱综合网| 91操人视频| 婷婷中文无码| 婷婷五月成人| 狠狠操狠狠| 人妻操逼视频。| 五月香婷婷| 五月婷婷AV| 国产 亚洲 在线| 久久婷婷五月综合色奶水99啪| 五月天综合久久| 99精品女人天堂| 99热这里只有精品青草| 99碰视频| 色玖玖综合网| 婷婷亚洲日本| 久久曰曰| 777精品成人a v久久| 国精产品一区一区三区免费视频| 五月婷婷丁香大陆免费| 激情五月黄色| 丁香婷婷婷五月| 久久久九九九 99| 日韩AAAAA| 色娸娸综合网| 婷婷99狠狠躁天天躁| 天天摸.天天mo| 少妇人妻人伦A片| 99视频在线观看欧| 99色在线视频观看| 欧美视频五区| 婷婷色五月婷婷姐妹| www99热| 日韩av大全| 日韩aⅴ视频| 激情开心五月天| 97干免费视频| 开心五月色婷婷综合开心网| 婷婷丁香色五月久久88| 久久久欧美精品sm网站| 五月丁香六月情| 五月情丁香色| 狠狠色综合图片| 夜夜撸夜夜骑| 丁香五月婷婷狠狠色| 丝袜大香蕉| 天天日天天干天天插天天射| 九九综舍久久| 五月天婷婷基地| 另类激情五月| 玖玖婷婷五月| 亚洲天堂99| 亚洲人成人五月天| 人妻AV在线观看| 婷婷丁香六月天| 五月婷婷欧美激情| 激情五月色婷婷| 99无码精品| 亚洲精品激情| 日日噜人人人做人| 丁香五月天久久| 中文字幕,综合,91| 亚洲天堂亚洲色色色| 日韩精品一曲二曲三曲四曲五曲| 国产免费AV在线| 天天添天天摸天天天天做| www一起操在线观看| 97色色视频| 思思精品热在线| 操人无码| 日韩AV在线电影| 色优久久| 五月丁香亚洲婷婷| 丁香六月婷月91婷月| 一片AV片免费播放| 99色综合| 丁香五月天堂网| 亚洲色色图片| 操九色| 色欧美色色色| 玖玖热视频| 五月婷婷片| 日本在线免费中文com.| 婷婷五月色综合| 两性婷婷丁香五月| 99这里只有精品视频| 久久九九免费视频| 桔色成人官方网站| 色色色色色色色色五月先| 亚洲一二三网| 国精产品一区一区三区免费视频| www.五月天色色.com| 人人做人人看人人摸| 高清不卡一区| 丁香婷婷综合喷| 精品一二三区久久AAA片| 天天干天天爽| 久久婷婷五月综合色和| 色婷婷成人在线| 天天肏夜夜肏| 久9视频免费播放| 操逼五月婷婷| 国产精品一区在线观看你懂的| 91狠狠综合网| 婷婷亚洲五月| 丁香五月五月婷婷五月天激情四射| 六月丁香花婷婷| 97色女人在线| 大香人妻| 成人小说色图婷婷五月| 99视频| www.zbzhongsen.com| 九九99免费理论| 五月婷婷六月情| 五月婷婷啪啪啪啪| 99热只有精品在线观看| 狠狠久久婷五月综合色| 美女天天久久| 99这里有精品视频3| www.久久久.com| 操九色| 亚洲秘 无码一区二区三区妃光/1| 五月丁香婷婷狠狠操| 激情都市另类| 激情婷婷丁香| 人妻熟女一区二区AV| 激情五月激情综合网| 婷婷丁香六月| 99精品无码| 婷婷伊人网| 99免费| 六月丁香激情网| 99精品在线播放| 五月天综合网| 亚洲色婷婷色| 99久久久国产大片区| 久久这里精彩免费在线观看| 亚洲色综合| 91久久久久久久久久久| 丁香六月婷婷综合激情欧美| 欧美日朝成人| 六月99天天婷婷激情综合| 久久九九综合| 婷婷丁香五月av| 欧美婷婷六月丁香综合色连续高潮抽搐| 激情五月天婷婷直播| 天天操天天爱天天日| 开心久久xxx色| 丁香六月中文| 激情五月天免费视频| 射久久丁香五月| 天天色宗合| 日韩综合久| 99re免费精品视频| 思思热在线视频精品| 青青青在线视频国产| 成人无码精品1区2区3区免费看| co超碰在线观看| 99视频日韩| 六月丁香六月婷婷欧美| 91丨九色丨大屁股| WWW五月天| 五月丁香激情深爱婷婷| 五月丁香六月婷婷网| 日本在线视频播放91| 五月天婷婷色综合| 噼里啪啦完整版中文在线观看| 婷婷丁香中文字幕| 九九人人看| 99色在线观看| 视频这里只有精品16| 激情五月综合网最新 | 97超碰在线免费观看| 天堂A∨在线| 婷婷六月色| 99精品丰满| 99在线视频精品| 天天干夜夜操A片| 国产熟女日日骚五月丁香爱| 裸体美女丁香五月天。| 久久婷婷五月综合| 丁香六月婷婷缴情欧美| 婷婷国产欧美97| 99re66热这里只有精品| 六月婷婷七月丁香| 亚洲99在线| 91久久久久久| 美国不卡视频| 五月天色婷好好| 狠狠色噜噜色狠狠狠综合久久成人波| 久久伊人婷婷| 九九热视频免费| 色情五月婷| 成人精品视频99在线观看免费| 麻豆忘忧草午夜| 大香蕉伊人久久| 国内精品玖玖| 激情色播| 亚洲视频在线网| 五月婷丁香花| 思思热AV| 婷婷色网| 91丨九色|PRNY熟妇| 99热这里只有精品10| 丁香五月在线观看| 97精品人人A片免费看| 六月色激情| 99热这里只有精品33| 99热精品观看| 超碰69天堂| 99无码视频| 欧美xx激情视频在线观看| 激情五月天影院| 欧美69色| 人人干天天操五月丁香| 99在线视频精品| 91久久网站| 99在线观看亚洲| 丁香五月天综合| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 成人国产欧美大片一区| 五月天丁香综合| 婷婷五月天激情五月天| 精品色色| 9久热在线视频精品| 婷婷开心激情综合五月天| 天天色色天天| 欧美激情中文字幕| 婷婷色成人| www.婷婷六月天| 日韩精品999| 四色AVwww| 免费无码毛片一区二区A片| 91精品久久久久久| 亚洲色色色| 九九在线91| 色五月激情综合| www色色com| A片一曲| 国产激情综合五月久久| 色综合色香蕉网| 91热er| 五月天婷婷久久视频| 久久性刺激| 婷婷五月激情五月激情| 韩国中文字幕91| 99精品视频在线6| 99操视频| 99热这里只有精品1025| 综合婷婷五月天| 亚洲婷婷综合视频| 2025年最新亚洲在线欧美| 人妻熟人中文字幕一区二区| av在线超清中文| 思思热精品在线| 91精品久久久久久77777| 丁香九月综合激情| 视频一二区| 婷婷五月天狠狠色| 日韩三及成人AV片| 开心五月网 | 五月丁香六月香综合激情| 99精品偷自拍| 内射激情在线| 在线观看免费人成视频无码| 激情婷婷五月天网址| 超碰狠狠操| 婷婷丁香五| 久草热久草在线视频| 人妻内射麻豆视频| 国产成人精品一区二区三区视频 | 人人操女人| 丁香六月婷婷色播| 久久超视频| 超碰免费99| 婷婷综合精品| 五月丁香琪琪| 色婷婷免费观看| 大香蕉五月天| 成人色五月天婷婷| 婷婷久久综合| 婷婷五月天性| 嫩草视频。| 婷婷五月六月| 九九热精品99| 狠狠操狠狠爱| 色色亚洲无码| 国产成人精品123区免费视频| 色丁香在线视频| 超碰在线观看三级片| 丁香五月激情综合啪啪| 丁香五月婷婷欧美成人色图| 亚洲色色色| 日韩一级A片黄色| 久久这里只有精品热在99| 国产Va视频| 久久久久久久久久久久久久久久一道本| 婷婷色欧美激情| 97人妻碰碰碰碰碰久久久久久| 丁香五月激情综合| 99爱视频精品| 少妇人妻丰满做爰XXX| 色人妻五月| 3p久久| 天天色亚洲| 伊人婷婷激情| 狠爱婷色| 天天操天天曰| 婷婷综合伊人丁香| 婷婷精品综合| 丁香五月天堂| 综合深爱五月| 激情五月天啪啪| 婷婷午夜| 九九精品视频在线观看| 久久五月激情综合| 亚洲成av人影院| 五月综合无码| site:hcxsz888.com| 丁香五月综合狠狠| 色播五月综合网| 色五月婷婷激情综合网| 欧美日本不卡黄色片| 久久 婷婷 五月天| 99热精品一区| 啪啪丁香五月| 欧洲电影在线观看免费版英语版| www.minyis.com【JT】实力收量可预付QQ2101460746 | AV伊人青草丁香六月| 欧美日韩成卜| 色玖玖综合网| 天天 青草 丝袜制服 在线| 免费AV在线| 精品一二三区久久AAA片| 久久激情网| 五月天婷婷色播综合在线| 丁香久久九九99| 天天弄天天操| 99爱视频在线| 婷婷五月俺要去| 久久9热| 国产午夜精品AV一区二区麻豆| 五月婷婷婷丁香播| 岛国资源网| www999日韩精品| 久久五月天影院| 99视频在线精品| 婷婷五月天中文字幕| 另类五月婷婷| 97黑人精品区| 婷婷综合性爱网| 99热网站| 伊人在线视频| 六月婷色六月| 久久久精品视频79| 成人丁香五月婷| 精品久久久91久久影视网| 婷婷五月色情天| 色99网站| 五月婷婷免费| 秋霞电影一级黄| 欧美激情中文字幕| 99人人爽| 丁香五月天啪啪| 成人欧美日韩| 丁香五月五月婷婷| 久久99热精品a片在线观看| 丁香色五月直播| 午夜成人综合| 99久久婷婷综合| 任你躁XXXXX麻豆精品| 色香欲综合| 婷婷情色五月天| 开心五月婷婷婷美女| 婷婷夜夜夜夜| 99色看这里只有精品| 亚洲区视频| 婷婷狠狠97| 日韩三级视频一区二区| 久草婷婷网 | 91丨九色丨白浆| 午夜丁香婷婷| 日本激情综合| 五月丁香婷婷啪啪综合网| 午夜理论片最新午夜理论剧| 久99久在线| 日韩av在线免费观看| 日日噜噜久久婷婷五月天| 90色免费视频| 婷婷激情五月呦呦| 美国少妇性做爰| 成人做爰A片免费看视频| 婷婷五月天福利| 可以看的AV| 久久综合爱| 婷婷九月激情| 97碰久久| 99re视频在线播放| 99色综合网| 日韩综合天堂| 久9热在线视频| 天天搞天天色综合| 99热热这里只精品996小说| 亚洲国产99| 婷婷五月丁香综合激情| 99久久性爱| 丁香五月播播| 五月丁香啪啪网| 色色色色色网| 婷婷丁香五月综合免费视频百花| 国产日韩欧美性爱| 国产avapp 网| 午夜成人AV在线| 操操碰| 色五月天在线观看| 色综合激情| 99热在线观看免费精品| 久久综合激情| 99精品视频在线观看| 91919191919久久成人视频| 色婷婷丁香花五月天| 亚洲精品**不卡在线播he| 极品少妇婷婷五月| 天天干,天天操,天天射| 91视频一起草| 99久久久| 开心久久爱五月天| 五月丁香花免费视频| 深情五月天| 在线观看av网站| 玖玖资源在线视频| 强辱丰满人妻HD中文字幕| 色九四色| www久久久久| 久久婷婷亚洲| 五月在线婷色| 五月天成人在线| 色色AV色色色东莞| 国产 亚洲 在线| 91一起操| www.99精品日操伊人乱碰在线| 日韩性爱无码| 亚洲欧洲国产精品| 欧洲亚洲免费视频区| 思思久日精品视频| 九九精品亚洲| 99re久久| 91九色 熟| 狠狠色97| 丁香午月AV中文字幕| 五月丁香狠狠地噜噜噜噜| 天天干天天日天天操| 婷婷性爱影院| 成人做爰A片免费看网站找不到了| 东北熟女视频99| 在线视频另类| 五月天综合区| 色五月婷婷大香蕉| 超碰成人免费| 六月婷婷日| 久久99网站| 丁香五月亚洲婷婷| 伊人久久大香线蕉av一区| 丁香六月激情综合| 久久精品日| 五月丁香婷婷综合| 五月丁香六月婷婷手机无线| 狼友超碰| 少妇人妻丰满做爰XXX| 嫩草视频观看| 丁香六月亚洲| 五月婷婷九| 性av| 婷婷五月色影视先锋| www..com色爱| 日本天堂免费99| 蜜桃成语时李时珍 免费| 97日本在线| 青青草搞屄视频网站| 国产成人亚洲综合A∨婷婷| 伊人久久婷婷| 99久久五月天| 好吊丝aV| 大香蕉九操| 欧美黄色一级| 99热99网| 丁香婷婷激情| 久久色大香蕉| 天天开心天天色| 五月婷婷之综合激情| 成AV人片一区二区三区久久| 五月丁香色婷基地综合久久| 久久五月天激情视频| 中文字幕永久免费| 超碰啪啪网| site:picc-up.com| 4399亚洲视频| 日韩久久日| 丁香五月婷婷啪| 九九人人精品| 精品九九久久| 99热欧| 91超级碰碰| 五月亭大香蕉| 婷婷五月天激情AV影院| 99热这里全都是精品| www.com亚洲网站在线免费| 五月天激情综合10p| 色五月首页| 丁香六月狠狠干| 九九热99热| 一二线视频 另类| 五月婷婷在线视频免费观看| 免费黄色AV| 大香蕉天堂色| 好好干av| 天天射影院| 亚洲精久久| 激情综合网激情五月天| 五月婷丁香| 五月婷丁香| 亚洲六月色婷婷| 色爱五月天| αv中文字幕在线观| 色狠狠999综合网| 成人 在线 日韩| 丁香五月a| 亚洲网站观看视频| 色的色综合| 天天综合色| 亚洲综合激情五月久久| 人人97碰| 婷婷五月色惰| 五月色综合网| 丁香9月婷婷| 狠狠插日日干撸| 成人 在线观看国产| 天天做天天爰天天爽天天无遮挡| 网站免费一站二站| 四月婷婷五月色综合| 二色AV| 久久五月天色婷婷| 99热日| AV成人在线播放| 91日视频| 精品99在线看| enecarbon-materials.com污K127封锁请涟系@wip1688 | 色六月视频| 操碰色一区就去操| 久热最新视频| 日韩一区二区A片免费观看| 婷婷成人在线| 大战熟女丰满人妻AV| 深爱激情四射| 午夜天堂一区人妻| 91操操操| 日本女色人人| 99爱视频免费看| 婷婷五月丁香性爱| 免费不卡狠操美女视频网| 综合久久六月| 五月婷在线| 六月丁香六月婷婷欧美| 91黄址| 日本色频| 91精品综合久久久久久五月丁香| 天天爽天天日人人爱 | 五月婷婷色播视频| 色999亚洲人成色| 天天天天天色| 婷婷五月丁香青青草在线| 五月天狠狠草| 五月五月婷婷| 天天色图| 这里只有精品视频视频在线观看| 99日韩| 久久视频九九视频| 五月色情精品| 97色色视频| 亚洲精品国产成人AV在线| 开心激情综合| 狠狠狠狠狠狠狠狠草| 国内久久婷婷| 色五月大| 亚洲va欧美| 亚洲亚洲人成综合网络| 另类激情网| 五月天婷婷社区久久综合| 婷婷五月天小说网| 色婷婷丁香五月在线| 成人AV播放| 久久伦乱| 欧美激情 日韩无码 婷婷 五月天 久久婷婷丁香五月一二三 | 中文网婷婷字幕婷| 99久在线观看| a69在线视频| 亚洲啪啪自拍| AA久久| 婷婷黄色五月天在线视频| 五月丁香色色色| 成人电影在线免费试看| 老司机午夜福利视频金瓶梅| 久久婷婷免费| AV五月丁香| 情婷婷五月天在线| 五月丁香A∨在线| 亚洲成人免费在线| 色婷激情网| 综合色吧| 亚洲va综合va国产va中文| 99热这里只有免费精品| 黄色AV日韩| 99精品视频播放| 99热爱爱干干日| 99热精品一区| 国产精品视频免费看| 国产精品久久久久久妇女6080| 婷婷激情视频欧美视频自拍视频欧美剧 | 天天综合网91| 亚洲婷婷性爱| 99热最新|