国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频

SQL 中 HAVING 的魅力,多數(shù)人容易忽略

共 7669字,需瀏覽 16分鐘

 ·

2021-01-06 10:17


點擊上方?泥瓦匠 關(guān)注我!

老家浙江東海邊,靠海吃海,目前經(jīng)營一個小品牌,讓普通人吃到最新鮮的海鮮。有興趣可以點擊了解:《浙里有漁,鮮人一步!》???

初識 HAVING

關(guān)于 SQL 中的 HAVING,相信大家都不陌生,它往往與 GROUP BY 配合使用,為聚合操作指定條件

說到指定條件,我們最先想到的往往是 WHERE 子句,但 WHERE 子句只能指定行的條件,而不能指定組的條件(這里面有個“階”的概念,可以查閱:神奇的 SQL 之層級 → 為什么 GROUP BY 之后不能直接引用原表中的列),因此就有了 HAVING 子句,它用來指定組的條件。我們來看個具體示例就清楚了。

我們有 學(xué)生班級表(tbl_student_class) 以及 數(shù)據(jù)如下 :

DROP?TABLE?IF?EXISTS?tbl_student_class;
CREATE?TABLE?tbl_student_class?(
??id?int(8)?unsigned?NOT?NULL?AUTO_INCREMENT?COMMENT?'自增主鍵',
??sno?varchar(12)?NOT?NULL?COMMENT?'學(xué)號',
??cno?varchar(5)?NOT?NULL?COMMENT?'班級號',
??cname?varchar(50)?NOT?NULL?COMMENT?'班級名',
??PRIMARY?KEY?(id)
)?ENGINE=InnoDB?DEFAULT?CHARSET=utf8?COMMENT='學(xué)生班級表';

--?----------------------------
--?Records?of?tbl_student_class
--?----------------------------
INSERT?INTO?tbl_student_class(sno,?cno,?cname)?VALUES?('20190607001',?'0607',?'影視7班');
INSERT?INTO?tbl_student_class(sno,?cno,?cname)?VALUES?('20190607002',?'0607',?'影視7班');
INSERT?INTO?tbl_student_class(sno,?cno,?cname)?VALUES?('20190608003',?'0608',?'影視8班');
INSERT?INTO?tbl_student_class(sno,?cno,?cname)?VALUES?('20190608004',?'0608',?'影視8班');
INSERT?INTO?tbl_student_class(sno,?cno,?cname)?VALUES?('20190609005',?'0609',?'影視9班');
INSERT?INTO?tbl_student_class(sno,?cno,?cname)?VALUES?('20190609006',?'0609',?'影視9班');
INSERT?INTO?tbl_student_class(sno,?cno,?cname)?VALUES?('20190609007',?'0609',?'影視9班');

我們要查詢??學(xué)生人數(shù)為 3 的班級?,這就需要用到 HAVING 了,相信大家都會寫

SELECT?cno,?COUNT(*)?nums?FROM?tbl_student_class?GROUP?BY?cno?HAVING?COUNT(*)?=?3;

如果我們不使用 HAVING,會是什么樣呢

可以看到,除了數(shù)量等于 3 的班級之前,其他的班級也被查出來了

我們可以簡單總結(jié)下:WHERE 先過濾出行,然后 GROUP BY 對行進行分組,HAVING 再對組進行過濾,篩選出我們需要的組

HAVING 子句的構(gòu)成要素

既然 HAVING 操作的對象是組,那么其使用的要素是有一定限制的,能夠使用的要素有 3 種:?常數(shù)?、?聚合函數(shù)?和?聚合鍵?,聚合鍵也就是 GROUP BY 子句中指定的列名

示例中的?HAVING?COUNT()?=?3?,?COUNT()?是聚合函數(shù),3 是常數(shù),都在 3 要素之中;如果有 3 要素之外的條件,會是怎么樣呢

SELECT?cno,?COUNT(*)?nums?FROM?tbl_student_class?GROUP?BY?cno?HAVING?cname?=?'影視9班';

執(zhí)行如上 SQL 會失敗,并提示:

[Err]?1054?-?Unknown?column?'cname'?in?'having?clause'

在使用 HAVING 子句時,把 GROUP BY 聚合后的結(jié)果作為 HAVING 子句的起點,會更容易理解;示例中通過 cno 進行聚合后的結(jié)果如下:

聚合后的這個結(jié)果并沒有?cname?這個列,那么通過這個列來進行條件處理,當(dāng)然就報錯了啦

細心的小伙伴應(yīng)該已經(jīng)發(fā)現(xiàn),HAVING 子句的構(gòu)成要素和包含 GROUP BY 子句時的 SELECT 子句的構(gòu)成要素是一樣的,都是只能包含?常數(shù)?、?聚合函數(shù)?和?聚合鍵

HAVING 的魅力

HAVING 子句是 SQL 里一個非常重要的功能,是理解 SQL 面向集合這一本質(zhì)的關(guān)鍵。下面結(jié)合具體的案例,來感受下 HAVING 的魅力

是否存在缺失的編號

tbl_student_class 表中記錄的 id 是連續(xù)的(id 的起始值不一定是 1),我們?nèi)サ羝渲?3 條

DELETE?FROM?tbl_student_class?WHERE?id?IN(2,5,6);
SELECT?*?FROM?tbl_student_class;

如何判斷是否有編號缺失?

數(shù)據(jù)量少,我們一眼就能看出來,但是如果數(shù)據(jù)量上百萬行了,用眼就看不出來了吧

不繞圈子了,我就直接寫了,相信大家都能看懂(記得和自己想的對比一下)

SELECT?'存在缺失的編號'?AS?gap
FROM?tbl_student_class
HAVING?COUNT(*)?<>?MAX(id)?-?MIN(id)?+?1;

上面的 SQL 語句里沒有 GROUP BY 子句,此時整張表會被聚合為一組,這種情況下 HAVING 子句也是可以使用的(HAVING 不是一定要和 GROUP BY 一起使用)

寫的更嚴(yán)謹(jǐn)點,如下(沒有 HAVING,不是主角,看一眼就好)

--?無論如何都有結(jié)果返回
SELECT?CASE?WHEN?COUNT(*)?=?0?THEN?'表為空'
????WHEN?COUNT(*)?<>?MAX(id)?-?MIN(id)?+?1?THEN?'存在缺失的編號'
????ELSE?'連續(xù)'?END?AS?gap
FROM?tbl_student_class;

那如何找出缺失的編號了,歡迎評論區(qū)留言

求眾數(shù)

假設(shè)我們有一張表:tbl_student_salary ,記錄著畢業(yè)生首份工作的年薪

DROP?TABLE?IF?EXISTS?tbl_student_salary;
CREATE?TABLE?tbl_student_salary?(
??id?int(8)?unsigned?NOT?NULL?AUTO_INCREMENT?COMMENT?'自增主鍵',
??name?varchar(5)?NOT?NULL?COMMENT?'姓名',
??salary?DECIMAL(15,2)?NOT?NULL?COMMENT?'年薪,?單位元',
??PRIMARY?KEY?(id)
)?ENGINE=InnoDB?DEFAULT?CHARSET=utf8?COMMENT='畢業(yè)生年薪標(biāo)';

insert?into?tbl_student_salary?values?(1,'李小龍',?1000000);
insert?into?tbl_student_salary?values?(2,'李四',?50000);
insert?into?tbl_student_salary?values?(3,'王五',?50000);
insert?into?tbl_student_salary?values?(4,'趙六',?50000);
insert?into?tbl_student_salary?values?(5,'張三',?70000);
insert?into?tbl_student_salary?values?(6,'張一三',?70000);
insert?into?tbl_student_salary?values?(7,'張二三',?70000);
insert?into?tbl_student_salary?values?(8,'張三三',?60000);
insert?into?tbl_student_salary?values?(9,'張三四',?40000);
insert?into?tbl_student_salary?values?(10,'張三豐',?30000);

平均工資達到了 149000?元,乍一看好像畢業(yè)生大多都能拿到很高的工資。然而這個數(shù)字背后卻有一些玄機,因為功夫大師李小龍在這一屆畢業(yè)生中,由于他出眾的薪資,將大家的平均薪資拉升了一大截

簡單地求平均值有一個缺點,那就是很容易受到離群值(outlier)的影響。這種時候就必須使用更能準(zhǔn)確反映出群體趨勢的指標(biāo)——眾數(shù)(mode)就是其中之一

那么如何用 SQL 語句來求眾數(shù)了,我們往下看

--?使用謂詞?ALL?求眾數(shù)
SELECT?salary,?COUNT(*)?AS?cnt
FROM?tbl_student_salary
GROUP?BY?salary
HAVING?COUNT(*)?>=?ALL?(
????SELECT?COUNT(*)
????FROM?tbl_student_salary
????GROUP?BY?salary);

結(jié)果如下

ALL 謂詞用于 NULL 或空集時會出現(xiàn)問題,我們可以用極值函數(shù)來代替;這里要求的是元素數(shù)最多的集合,因此可以用 MAX 函數(shù)

--?使用極值函數(shù)求眾數(shù)
SELECT?salary,?COUNT(*)?AS?cnt
FROM?tbl_student_salary
GROUP?BY?salary
HAVING?COUNT(*)?>=?(
????SELECT?MAX(cnt)
????FROM?(
????????SELECT?COUNT(*)?AS?cnt
????????FROM?tbl_student_salary
????????GROUP?BY?salary
????????)?TMP
????)?;

求中位數(shù)

當(dāng)平均值不可信時,與眾數(shù)一樣經(jīng)常被用到的另一個指標(biāo)是中位數(shù)(median)。它指的是將集合中的元素按升序排列后恰好位于正中間的元素。如果集合的元素個數(shù)為偶數(shù),則取中間兩個元素的平均值作為中位數(shù)

表?tbl_student_salary?有 10 條記錄,那么?張三三,?60000?和?李四,?50000?的平均值?55000?就是中位數(shù)

那么用 SQL,該如何求中位數(shù)呢?做法是,將集合里的元素按照大小分為上半部分和下半部分兩個子集,同時讓這 2 個子集共同擁有集合正中間的元素。這樣,共同部分的元素的平均值就是中位數(shù),思路如下圖所示

像這樣需要根據(jù)大小關(guān)系生成子集時,就輪到非等值自連接出場了

--?求中位數(shù)的SQL 語句:在HAVING 子句中使用非等值自連接
SELECT?AVG(DISTINCT?salary)
FROM?(
????SELECT?T1.salary
????FROM?tbl_student_salary?T1,?tbl_student_salary?T2
????GROUP?BY?T1.salary
????--?S1?的條件
????HAVING?SUM(CASE?WHEN?T2.salary?>=?T1.salary?THEN?1?ELSE?0?END)?>=?COUNT(*)?/?2
????--?S2?的條件
????AND?SUM(CASE?WHEN?T2.salary?<=?T1.salary?THEN?1?ELSE?0?END)?>=?COUNT(*)?/?2
)?TMP;

這條 SQL 語句的要點在于比較條件?>=?COUNT(*)/2?里的等號,加上等號并不是為了清晰地分開子集 S1 和 S2,而是為了讓這 2 個子集擁有共同部分

如果去掉等號,將條件改成?>?COUNT(*)/2?,那么當(dāng)元素個數(shù)為偶數(shù)時,S1 和 S2 就沒有共同的元素了,也就無法求出中位數(shù)了;加上等號是為了寫出通用性更高的 SQL

查詢不包含 NULL 的集合

假設(shè)我們有一張學(xué)生報告提交記錄表:tbl_student_submit_log

DROP?TABLE?IF?EXISTS?tbl_student_submit_log;
CREATE?TABLE?tbl_student_submit_log?(
??id?int(8)?unsigned?NOT?NULL?AUTO_INCREMENT?COMMENT?'自增主鍵',
??sno?varchar(12)?NOT?NULL?COMMENT?'學(xué)號',
??dept?varchar(50)?NOT?NULL?COMMENT?'學(xué)院',
??submit_date?DATE?COMMENT?'提交日期',
??PRIMARY?KEY?(id)
)?ENGINE=InnoDB?DEFAULT?CHARSET=utf8?COMMENT='學(xué)生報告提交記錄表';

insert?into?tbl_student_submit_log?values
(1,'20200607001',?'理學(xué)院',?'2020-12-12'),
(2,'20200607002',?'理學(xué)院',?'2020-12-13'),
(3,'20200608001',?'文學(xué)院',?null),
(4,'20200608002',?'文學(xué)院',?'2020-12-22'),
(5,'20200608003',?'文學(xué)院',?'2020-12-22'),
(6,'20200612001',?'工學(xué)院',?null),
(7,'20200617001',?'經(jīng)濟學(xué)院',?'2020-12-23');

學(xué)生提交報告后,?submit_date?列會被寫入日期,而提交之前是 NULL

現(xiàn)在我們需要從這張表里找出哪些學(xué)院的學(xué)生全部都提交了報告,這個 SQL 該怎么寫?

如果只是用?WHERE?submit_date?IS?NOT?NULL?條件進行查詢,那文學(xué)院也會被包含進來,結(jié)果就不正確了

正確的做法應(yīng)該先以?dept?進行分組(GROUP BY),然后對組進行條件的過濾,SQL 如下

SELECT?dept
FROM?tbl_student_submit_log
GROUP?BY?dept
HAVING?COUNT(*)?=?COUNT(submit_date);

這里其實用到了?COUNT?函數(shù),COUNT(*) 可以用于 NULL ,而 COUNT(列名) 與其他聚合函數(shù)一樣,要先排除掉 NULL 的行再進行統(tǒng)計

當(dāng)然,使用 CASE 表達式也可以實現(xiàn)同樣的功能,而且更加通用

SELECT?dept
FROM?tbl_student_submit_log
GROUP?BY?dept
HAVING?COUNT(*)?=?SUM(
????CASE?WHEN?submit_date?IS?NOT?NULL?THEN?1
????????ELSE?0?END
????);

其他

不僅僅只是如上的那些場景適用于 HAVING,還有很多其他的場景也是需要用到 HAVING 的,有興趣的可以去翻閱《SQL進階教程》

聚合鍵條件的歸屬

我們來看個有趣的東西,還是用表:tbl_student_class

我們發(fā)現(xiàn),聚合鍵所對應(yīng)的條件既可以寫在 HAVING 子句當(dāng)中,也可以寫在 WHERE 子句當(dāng)中

雖然條件分別寫在 HAVING 子句和 WHERE 子句當(dāng)中,但是條件的內(nèi)容,以及返回的結(jié)果都完全相同,因此,很多小伙伴就會覺得兩種書寫方式都沒問題

單從結(jié)果來看,確實沒問題,但其中有一種屬于偏離了 SQL 規(guī)范的非正規(guī)用法,推薦做法是:?聚合鍵所對應(yīng)的條件應(yīng)該書寫在 WHERE 子句中?,理由有二

語義更清晰

WHERE 子句和 HAVING 子句的作用是不同的;前面已經(jīng)說過,HAVING 子句是用來指定“組”的條件的,而“行”所對應(yīng)的條件應(yīng)該寫在 WHERE 子句中,這樣一來,寫出來的 SQL 語句不但可以分清兩者各自的功能,而且理解起來也更容易

執(zhí)行速度更快

使用 COUNT 等函數(shù)對表中數(shù)據(jù)進行聚合操作時,DBMS 內(nèi)部進行排序處理,而排序處理會大大增加機器的負擔(dān),從而降低處理速度;因此,盡可能減少排序的行數(shù),可以提高處理速度

通過 WHERE 子句指定條件時,由于排序之前就對數(shù)據(jù)進行了過濾,那么就減少了聚合操作時的需要排序的記錄數(shù)量;而 HAVING 子句是在排序之后才對數(shù)據(jù)進行分組的,與在 WHERE 子句中指定條件比起來,需要排序的數(shù)量就會多得多

另外,索引是 WHERE 根據(jù)速度優(yōu)勢的另一個有利支持,在 WHERE 子句指定條件所對應(yīng)的列上創(chuàng)建索引,可以大大提高 WHERE 子句的處理速度

總結(jié)

1、集合論

集合論是 SQL 語言的根基,只有從集合的角度來思考,才能明白 SQL 的強大威力

學(xué)習(xí) HAVING 子句的用法是幫助我們順利地忘掉面向過程語言的思考方式并理解 SQL 面向集合特性的最為有效的方法

2、HAVING 子句的要素

3 個要素:常數(shù)、聚合函數(shù) 和 聚合鍵

HAVING 大多數(shù)情況下和結(jié)合 GROUP BY 來使用,但不是一定要結(jié)合 GROUP BY 來使用

3、SQL 的執(zhí)行順序

WHERE 子句是指定行所對應(yīng)的條件,而 HAVING 子句是指定組所對應(yīng)的條件

參考

《SQL基礎(chǔ)教程》

《SQL進階教程》

END

往期推薦

Kafka丟消息?必看的高頻面試題!

很少人真正了解 \n 和 \r 有什么區(qū)別!

POI 如何處理 Excel 大批量數(shù)據(jù)的導(dǎo)入和導(dǎo)出?

工廠方法模式


老家浙江東海邊,靠海吃海,目前經(jīng)營一個小品牌,讓普通人吃到最新鮮的海鮮。有興趣可以點擊了解:《浙里有漁,鮮人一步!》???

點擊領(lǐng)?。撼绦騿T最新學(xué)習(xí)資料!

下方二維碼關(guān)注我

技術(shù)草根,堅持分享?編程,算法,架構(gòu)

朋友助力下!點個在看
瀏覽 19
點贊
評論
收藏
分享

手機掃一掃分享

分享
舉報
評論
圖片
表情
推薦
點贊
評論
收藏
分享

手機掃一掃分享

分享
舉報

感谢您访问我们的网站,您可能还对以下资源感兴趣:

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 一区二区无码视频| 高清av免费| 日韩一级二级三级| 亚洲黄色视频免费看| 色色色五月婷婷| 香蕉黄色三级片| 九九热精品视频在线观看| 亚洲性爱在线播放| 二区三区无码| 影音先锋成人资源AV在线观看| 国产黄片网站| 三级无码电影| 黄av在线| 国产又粗又长又硬又大毛苴茸图片 | 日一日射一射| 免费在线看A| 一道本不卡视频| 天天天天干| 成人福利网站| av在线免费观看网址| 国产精品资源在线观看| 黄色视频在线| 人人操碰人人| 中文字幕第4页| 草草在线视频| 亚洲免费成人视频| 日韩爆乳一区二区三区| 久草资源视频| 中文人妻| 国产A区| 99视频久久| 人人摸天天| 亚洲天堂在线观看免费视频| 日韩不卡免费| 久久丁香五月婷婷五月天激情视频 | 成人一区二区在线| 狼人社區91國產精品| 亚洲无码电影网| 亚洲成人免费在线观看| 久操网址| 日韩无码av电影| 日韩无码人妻一区二区三区| 中文字幕第4页| 成人福利网站| 亚洲欧洲AV| 欧美影院亚洲| 自拍一区在线观看| 婷婷五月天青草| 男女av| 99久久99九九99九九九| 秋霞福利影院| 99在线精品视频| 91成人导航| 日韩一级黄色毛片| 在线欧美日韩| 一区二区无码av| 91色图| 色就是亚洲| 不卡一二三区| 综合影院| 欧美大片视频| 国产黄色在线| 一级黄片免费观看| 国产丝袜av| www.AV在线| 九九热99视频| a亚洲a| 亚洲一本之道| 欧美日韩高清无码| 亚洲人操逼视频| 美女免费AV| 嫩草在线播放| 国产成人a亚洲精品www| 88AV视频| 农村A片婬片AAA毛片| 亚洲成人色色| 黄片无遮挡| 坏男人内射老太太| 91精品成人电影| 国产成人在线视频免费| 久热在线资源福利站| 久久久一区二区三区四区免费听| 中文黄片| 青青草在线视频免费观看| 另类老太婆性BBWBBw| 国产精品黄色片| 国产性爱自拍视频| 国产成人影视在线观看| 国产免费观看视频| 最近最经典中文MV字幕| 色视频免费观看| 超碰九一| 久久青草免费视频| 激情自拍偷拍| 精品无码AV一区二区三区| 国产无遮挡又黄又爽又色视频软件 | 一级国产黄色视频| 亚洲人气无码AV| 国产特級黃色大片| 亚洲无码久久| 日韩在线| 外国成人视频| 色秘乱码一区二区三区| 黄色视频在线观看亚洲一区二区三区免费| 白浆四溢av| 淫荡五月天视频导航| 中文字幕第83页| 免费高清无码在线观看| 欧美精品在线视频| 日日摸日日| 久久综合中文字幕| 国产亚洲久一区二区^_^| 在线视频你懂得| 亚洲视频在线看| 国产秘久久一区二区| 97欧美精品人妻系列| 一区二区三区电影| 成人无码交配视频国产网站| 黑人大荫蒂女同互磨| 国产日韩在线视频| 91久久久久久久| 国产精品国产精品国产专区不卡 | 一道本高清无码视频| 亚洲香蕉在线视频| 欧美一级特黄A片免费| 中文字幕人成人乱码亚洲电影| 久久精品国产99精品国产亚洲性色 | 成人久久电影| 最新中文字幕在线观看| www.zaixianshipin| 日本视频网| 国产乱码精品一区二区三区的特点 | 欧美视频一区二区三区| 特黄视频| 91re| 日韩性爱网址| 国产第七页| 亚洲精品国产精品国自产A片同性| 日本一级黄色| 免费黄色视频网站大全| 亚洲精品成人无码AV在线| 粉嫩99精品99久久久久久夜| 免费视频一区二区三区四区| 久久免费视频精品| 黄色小视频免费看| 精品视频一区二区三区| 人人妻人人爽| 激情av在线观看| 国偷自产视频一区二区久| 无码在线视频播放| 国产精品被狂躁到高潮| 日本AA片视频| 精品美女视频在线观看免费软件| 日韩一卡二卡| www.色五月| 中文字幕乱妇无码Av在线| 精品第一页| 国精品无码人妻一区二区三区免费 | 91免费成人视频| 婷婷五月天激情电影| 国产又爽又黄免费网站在| AV无码免费一区二区三区不卡| 国产成人精品123区免费视频| 91人人草| 中文字幕第六页| 欧美日韩国产在线观看| 午夜无码在线观看视频| 亚洲精品成人无码熟妇在线| 99高清国产| 粉嫩小泬BBBBBB免费看| 一区二区三区无码高清| 久久久久亚洲AV成人网人人软件| 亚洲黄片免费观看| 亚洲无码A片在线观看APP| 先锋影音av资源站| 在线免费观看中文字幕| 在线视频日韩| 黄片在线视频| 91狠狠爱| 免费的a片| 中文字幕亚洲天堂| 欧美一级在线免费观看| 日韩无码免费播放| 欧美级毛片一进一出| 尻屄视频| 操大逼视频免费国产| 草久在线观看| 国产精品无码在线播放| 囯产精品久久久久久久| 无码人妻一区二区三区| 韩国深夜福利视频| 欧美一级在线| 成人国产欧美日韩在线视频| 国产一区二区不卡视频| 精品一区二区三区免费| 欧美成人版| 大香蕉精品在线| 亚洲一级av无码毛片精品| 久久精彩免费视频| 久色悠悠| 国产乱码一区二区三区的解决方法 | 成人黄色A片| 五月天亭亭.com| av東熱激情东京热| 视频一区18| 99人妻人人爽人人添人人精品| 爆乳一区二区三区AV| 国产在线视频第一页| 日本V片| 亚洲精品一二三区| 在线人妻| 国产精品伦子伦免费视频| 好吊顶亚洲AV大香蕉色色| 67194熟女| 国产三级| 高清无码网站在线观看| 欧美搡BBBB搡BBB| 天干天干天夜夜爽| 天天操免费| 热九九精品| 一级黄色片免费| 99热网站| 91久久精品国产91久久公交车 | 日韩免费福利视频| 偷拍一区二区三区| 中文字幕免费高清网站| 大香蕉久草| 日逼导航| 欧美黄色片网站| 国产av黄色| 在线观看国产区| av一区在线观看| 一区二区三区视频在线| 日韩在线视频免费观看| 欧美性爱在线网站| 黄色在线免费观看网站| 亚洲a在线观看| 特猛特黄AAAAAA片| 骚逼逼影院| 狠狠躁日日躁夜夜躁A片无码| 美女性爱3P视频| 日韩小视频+国产| 精品1区| 欧美日韩在线播放| 六十路老熟女码视频| a免费观看| 亚洲av免费在线观看| 日韩一级在线视频| 婷婷丁香一区二区三区| 3D动漫精品啪啪一区二区免费| 亚洲性图第一页| 偷拍-91爱爱| 久久精品视频18| 国产乱伦精品视频| 日韩久久网站| 伊人久久久| 大鸡吧大香蕉| 亚洲激情在线观看| 偷拍三区| 一级aa免费视频| 无码视频韩国| 一区二区三区精品| 视频一区二| 精品国产一区二区三区久久久蜜月 | 无码爱爱| 精品九九| 91三级片在线观看| 国产又色又爽又黄又免费| 女色综合| 日韩中文字幕av在线| 99久久久久久| 免费观看高清无码视频| 久操婷婷| 9999久久久久| 国精品无码A区一区二区| 久久草大香蕉| 91视频美女模特| 午夜特级| 欧美日韩一二三区| 日本少妇高潮喷水XXXXXXX| JULIA超乳JULIA无码| 大香蕉在线观看视频| 色香蕉在线视频| 天天爽夜夜爽人人爽| 国产和日韩中文字幕| 国产三级视频在线| 日韩色情片| 成人黄色一级A片| 91久久国产综合久久91精品网站 | 九九久久影院| 亚洲91网站| 日韩成人无码AV| 午夜精品久久久久久久99热精东 | 淫荡人妻视频| 麻豆精东一区二区欧美国产| 美日韩在线| 日韩人妻无码一区二区三区99| 亚洲一卡| 久久久久逼| 色婷操逼| A片免费观看视频| 在线无码播放| 成人在线第一页| 成人AV一区二区三区| 2021无码| 亚洲AV片一区二区三区| 亚洲av毛片| 久久久天堂国产精品女人| 久久AV无码| 看毛片网址| 91女人18毛片水多国产| 色中色av| 人人干人人干人人| 丰满人妻一区二区三区Av猛交| 国产在线A片| 国产av福利| 99热一区二区三区| 人人操人人摸人人爽| 久草视频免费| 欧美黄网站在线观看| aaa在线| 国产一级A片在线观看| 无码偷拍| 日韩老熟妇| 2025精品视频| 农村新婚夜一级A片| 嫩BX区二区三区的区别| 无码秘蜜桃一区二区| 性爱小说视频| 国产激情av| 天天色色天天| 中日韩欧美一级A片免费| av三级网站| 蜜臀av在线免费观看| 国产精品久久视频| 亚洲香蕉视频网站| 性爱福利社| 九九天堂网| 国产三级麻豆| 97国产视频| 日韩精品一区二区亚洲AV观看| 欧美在线综合| 玖玖国产精品| 国产一级a毛一级a做免费高清视频 | 强奸校花到高潮| 高潮喷水视频| 在线观看免费黄色视频| 好吊顶亚洲AV大香蕉色色| 成人伊人网| 国产粉嫩在线观看| 超碰在线免费| 啪啪网站免费观看| 亚洲成人少妇老妇a视频在线| 嫩BX区二区三区的区别| 女人A片一级黄色| 免费的av网站| yy午夜福利| 五月丁香性爱| 人妖黃色一級A片| 四虎精品一区二区| 日韩Va| 伊香蕉大综综综合| 人妻无码免费视频| 欧美在线一级片| 国产激情综合| 九九热在线精品视频| 日韩精品三级片| 免费观看成人片| 69视频国产| 欧美精品欧美精品系列| 欧美性网站| 亚洲激情综合视频| 国产在线h| 日韩AV资源网| 精品永久免费| 久久久成人电影| 成人A片免费观看| 亚洲一线在线观看| 国产棈品久久久久久久久久九秃| 国产在线观看黄| 国产草逼视频| 99精品在线播放| 天天干视频| 中文字幕精品一区| 成人aV免费观看| www尤物| 国产一区二区三区视频在线| 亚洲v天堂| 男女啪啪啪网站| 欧美做爱网站| 欧美精品性爱视频| 天天日天天干麻豆| 亚洲AV秘无码不卡在线观看| 亚洲天堂网在线观看| 九色PORNY丨自拍蝌蚪| av无码aV天天aV天天爽| 天堂网久久| 在线观看黄色视频网站| 91欧美亚洲| 国产在线观看免费视频今夜| 午夜69成人做爱视频网站| 五月丁香综合久久| 欧美一区二区在线视频| 久了中文字幕| 国产肏逼视频| 伊人久久狼人| 99视频久久| 日韩第22页| 亚洲综合自拍| 逼逼网| 超碰在线最新| 国产精品TV| 日韩无码视屏| 欧美成人看片| www.91在线| AAA片视频| 成人自拍视频| 国产三级片自拍| 视频国产区| 日韩欧美三级| 超碰在线精品| 一道本视频在线| 18禁黄网| 大香蕉福利在线| 91色在线观看| 日本黄色片在线播放| 亚洲AV成人无码久久精品麻豆| 免费Av在线| av大片免费看| 91丨九色丨熟女新版| 国产三级片网| 大香蕉999| 国产三级一区二区| 天天干天天干| 少妇高潮喷水| 九九re精品视频在线观看| 91视频人妻| 精品国产123| 玉米地一级婬片A片| 亚洲视频在线视频| 国产精品黄视频| 中文字幕在线免费观看视频| 美女天天干| 高清无码一区二区在线| 日本人妻中文字幕| 色综合中文字幕| 思思热在线视频精品| 欧美亚洲视频| 日韩天天| 日韩欧美成人网| 天天干天天日天天操| 成人无码交配视频国产网站| 成人无码影院日韩,成人年… | 97精品人妻一区二区三区在线| 特黄视频在线观看| 99久久99久久| 欧美一级A片免费看视频小说| 激情六月婷婷| 一级片免费网站| 蜜桃传媒AV| 三级片久久久| 波多野59部无码喷潮| caobi999| 人人操免费| 天天成人| 亚洲激情成人| 欧美成人无码A片免费| 韩国三级HD中文字幕的背景音乐| 国产欧美在线观看不卡| 午夜69成人做爱视频网站| 一道本视频在线| 国产成人秘免费观看一区二区三区 | 狠狠躁日日躁夜夜躁A片小说免费| www.av在线播放| 中文字幕在线观看一区| 久久韩国| 中文熟妇| www.伊人大香蕉| 欧美日韩卡一卡二在线播放视频| 四虎成人网址| 国产粗大| 性爱视频亚洲| 国产三级在线播放| 成人啪啪网站| 一级a片免费| 日本一级理论片在线大全| 亚洲免费视频在线播放| 亚洲日韩在线a成| 亚洲精品午夜福利| 天天日天天搞| 亚洲一区2区| 色天堂色天使| 超碰精品在线| 日韩美女久久| 亚洲一级免费在线观看| 婷婷五月天av| 婷婷五月天基地| 国产成人久久777777| 人人操人人爽| 成人黄网免费观看视频| 国产又粗又猛又爽又黄91精品 | 色综合五月| 午夜av影院| 91在线无码精品秘国产-百度| 2018天天日天天操| 精品福利一区二区三区| 91九色口爆吞精| 亚洲成人性爱网站| 国产主播第一页| 少妇AAA级久久久无码精品片| 丁香六月婷婷| 熟妇在线观看| 狠狠干五月天| 日韩高清成人无码| 国产精品视频久久久久| 久久一区| 欧美成人无码A片免费| 三级片网站在线播放| 波多野结衣视频免费在线观看| jizz免费视频| 中文无码字幕| 欧美视频精品| 黄色视频大全免费看| 精品无码国产一区二区三区51安| 操逼视频在线看| 日本精品黄色| 动漫人物插画动漫人物的视频软件 | 亚洲欧洲无码在线| 日朝无码| 先锋成人AV| 黄色电影网页| 五月丁香婷婷激情综合| 麻豆传媒嫂子| 一级片在线免费观看| 日韩大片在线观看| 69人人| 一级a片免费看| 欧美特黄AAAAAAAAA片| 亚洲男人的天堂视频网在线观看+720P | 大地影院资源官网| 欧美亚洲日韩在线观看| 97超碰自拍| 国产传媒AV| 婷婷色网| 欧美三级视频在线观看| 国产精品成人99一区无码| 乱子伦毛片国产| 免费在线观看亚洲| 五月丁香婷婷开心| 国产欧美一区二区人妻喷水| 天天干天天射天天操| 国产免费一区| 在线观看的av网站| 久久9视频| 一级黄片免费看| 特级西西44www无码| 九九九九国产| 狠狠插网站| 久久黄色成人视频| 天天日很很操| 亚洲视频天堂| 在线观看免费成人网站| 久久综合在线| 精精国产| 精品逼| 操逼无码| 人人艹人人摸| 精品区| 国产2页| 激情午夜av| 免费岛国av大片| 日韩A视频| 国产在线观看一区二区| 国产一级婬片A片免费无成人黑豆| 小明看台湾成人永久免费视频网站| 天天草天天草| aaa国产精品| 中文字幕高清无码在线播放| 性爱免费专区| 成人久久久| 日韩成人无码一区二区| 日本91视频| 男女啪啪| 99re免费视频| 懂色AV一区二区三区国产中文在线 | av资源在线| 黑人无码视频| 黄片网站免费看| 中文无码日本一级A片久久影视| 超碰人人爽| 亚洲成人视频免费在线观看 | 久久大香蕉视频| www.婷婷五月天| 去干网欧美| 国产AV在| 一区二区三区免费在线观看| 日韩精品一区在线| 高清无码高潮| 免费看三级网站| gogogo高清在线观看免费直播中国 | 老熟女-ThePorn| 无码区一区二区三区| 福利网址| 一级免费黄色视频| 黑人一区二区三区四区| 噼里啪啦免费观看视频大全| 欧洲成人无码| 亚洲夜夜撸| 亚洲天堂成人网| 无码操B| 日韩精品人妻中文字幕第4区| 欧美日本中文字幕| 大香蕉综合视频| 婷婷看片| 国产成人无码一区二区在线观看| www.xxx| 亚洲综合二区| 99免费视频在线| 69伊人| 西西444WWW无码大胆在线观看| 精品一区二区三区av| 久久激情国产| 九九九在线观看视频| 国产精品HongKong麻豆| 日本高清色清di免费观看| 综合久久99| 黄色在线网站| 天天操夜夜骑| 综合伊人| 北条麻妃视频在线| 国产色视频| 天天爱综合| 男女啪啪国产| 日韩专区在线观看| 在线国产日韩| 91精品婷婷国产综合| 91社区成人影院| 国产精品中文字幕在线观看| 三级网址大全| 欧美不卡在线播放| MAD033_后宫秘密陶子.| 人人妻人人爽| 豆花视频在线观看| 久久久成人网| 大香蕉777| 黄色三级片网站| 黄网在线看| 久久精品一区二区三区四区| 日韩一级片在线播放| 香蕉伊人视频| 2019人人操| 内射视频在线免费观看| 日本大香蕉伊人| 国产精品国产三级国产AⅤ原创| 精品黄色片| av色色| 日本欧美黄色| 壁特壁视频在线观看| 无码AV电影| av无码电影| 日本成人精品| 欧美日韩中文字幕在线| 97人妻人人澡人人爽人人精品 | 亚洲免费看黄| 国产Av影视| 97久久一区二区| 亲子伦视频一区二区三区| 日一日射一射| 国产精品无码在线| 免费无码国产| 人妻FrXXeeXXee护士| www.91麻豆| 日韩黄色在线观看| 操嫩逼| 无码成人午夜在线影院| 91精品电影| 九九碰九九爱97超碰| 熟女乱论| 91人妻人人澡人人| 欧美成人三区性价比| 少妇嫩搡BBBB搡BBBB| 日本不卡在线视频| 天天综合天天做天天综合| 中文字幕第2页| 日韩黄视频| 91资源在线| 国产精品久久久久久久久久王安宇| 黄片高清| 亚洲无码在线免费观看| 操骚逼视频| 2015中文字幕黄色视频| 一级国产黄色视频| 中文字幕一区二区三区人妻在线视频| 欧美性爱无码在线| 国产在线视频第一页| 伊人大香焦网| 日韩人妻在线播放| 婷婷高清无码| 国产TS在线| 日韩欧美国产成人| 无码人妻中文字幕| 91人妻无码精品一区二区| 91人妻人人爽| 在线视频91| 伊人在线视频| 2025AV中文字幕| 午夜午夜福利理论片在线播放 | 一级操逼视频免费观看| 丁香五月天婷婷久久| 久久久aaa| 夜夜撸一撸| h视频在线观看网站| 神马午夜精品91| 豆花天天吃最新视频| 91麻豆精品国产| 操逼观看| 天天日天天操天天干| 操逼在线观看| 97无码免费| 日本a片免费| 婷婷视频网| 激情网站在线| 可以免费看的黄色| 日韩精品一区二区三区黄冈站长 | 久精品视频| 人妻少妇av中文字幕乱码牛牛| 亚洲人在线观看| 欧美裸体视频| 麻豆国产91| 一级在线播放| 91视频在线免费看| 亚洲精品成人视频| 性无码一区二区三区| 超碰9| 91蝌蚪久久| 5252a我爱haose01我愿| 水蜜桃视频在线播放| 午夜免费无码| 四虎AV在线| 免费看黄片的网站| 国产精品v| 亚洲色婷婷| 国产A级成人婬片1976| 婷婷伊人久操网| 亚洲日韩黄色| 香蕉视频一区| 国产精品夜夜爽7777777| 亚洲专区视频| 国产一级在线观看| 亚洲一级免费在线观看| 特黄视频在线观看| 精品国产区一区二| 在线观看视频免费无码免费视频| 日产无码| 青青草视频在线免费观看| 精品乱伦| 豆花无码视频一区二区| 51伦理| 蜜桃传媒视频| 国产日韩欧美综合在线| 亚洲天堂精品在线观看| 大香蕉网址| 国产精品可站18| 18性XXXXX性猛交| 日韩久久久久| 五月丁香亭亭| 最近最好的2019中文| 人人摸人人草| 翔田千里在线一区二区三区| 国产第七页| 玖玖爱免费视频| 国产成人AV在线播放| 午夜社区| 欧美亚洲国产精品| 在线看的av| 人妻无码一区二区三区| av影音在线| 精品福利视频导航| 少妇人妻偷人精品无码视频新浪| 日韩精品黄片| 色呦呦视频在线观看| 豆花视频成人版www满18| www.91麻豆| 日韩三级| 丁香激情综合| 羽月希奶水饱胀在线播放| aaa无码| 99久久婷婷国产综合精品草原 | 中文字幕在线视频观看| 在线啪| 亚洲.www| 韩国三级av| 青青草免费公开视频| 成人午夜黄色| 性爱福利导航| 少妇搡BBBB搡BBB搡造水多/ | 天天色色| 亚欧洲精品视频| 97视频精品| 欧美日韩国产中文字幕| 无码专区一区二区三区| 日韩顶级毛片| 免费看国产黄色| 狠狠躁日日躁夜夜躁A片小说免费| 欧美精品无码| 欧美视频一区二区三区| 久久久精品999| 天天天天日天天干| 成人无码一区二区三区| 亚洲无码视频观看| 尻屄电影| 天天操天天日天天操| 国产精品99久久久久久成人| 日韩无码影院| 污污污污污www网站免费民国| 亚洲免费AV在线| 99久久婷婷国产精品2020| 国产黄色A片| 亚洲免费观看高清视频| 新BBWBBWBBWBBW| 一级一级一级做a免费一级做a | 秋霞一级| 日本黄色视频电影| 欧美色影院| 麻豆传媒电影| 夜夜骑夜夜操| 成人黄色毛片视频| 在线男人天堂| www.尤物视频| 亚洲91视频| 国产男女无套免费| 丁香婷婷激情五月| 午夜影音| 欧洲毛片基地c区| 黄色av免费在线| 99热在线观看精品免费| 日韩黄色网| 五月天黄色电影网站| 成人黄色免费看| 4438成人网| 成人做爰100部片视频| 国产视频a| 成人无码人妻| 人人摸人人摸| 人人操夜夜爽| 男女啊啊啊| 色哟哟AV| 伊人影院在线免费观看| 丝袜一区二区三区| 免费成人黄片| av大片在线观看| 日本韩国高清无码| 成人毛片在线| 欧美色视频在线观| 国产乱子伦精品久久| 国产一级a毛一级a做免费图片| 人人摸人人草| 婷婷综合欧美| 国产真实露脸乱子伦对白高清视频 | 欧美性猛交XXXX乱大交蜜桃| 欧美成人A级片| 亚洲一区翔田千里无码| 91在线无码精品秘| 日韩中文字| 99re在线观看观看这里只有精品| 在线看黄网站| 亚洲蜜桃av一区| 国产资源AV| 草逼小视频| 精品國產一區二區三區久久蜜月| 日韩精品视频免费在线观看| 黑人无码AV黑人天堂无码AV| 欧美日逼小视频| 国产精品毛片一区二区在线看| 91九色视频| 女人自慰网站在线观看| 91精品视频网| 在线黄| 老熟女AV| 伊人在线视频观看| www.高清无码| 亚洲欧美日韩在线| 家庭乱伦AV| 俺来也俺去也| 一本久道视频一本久道| 91色综合| 人人爱人人操| 九九九视频在线观看| 人人干人人干人人| 波多野结衣av在线观看窜天猴 | 北条麻妃久久网站| 亚洲无码视频在线免费观看 | 婷婷丁香五月激情一区综合网| av无码毛片| 中文av在线播放| 亚洲小电影在线观看| 免费A片在线播放| 有码中文字幕| 天堂在线v| 日韩激情无码一区二区|