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

為什么 MySQL 不推薦默認(rèn)值為 null ?

共 15801字,需瀏覽 32分鐘

 ·

2020-12-16 23:09

Java技術(shù)棧

www.javastack.cn

關(guān)注閱讀更多優(yōu)質(zhì)文章



通常能聽到的答案是使用了NULL值的列將會(huì)使索引失效,但是如果實(shí)際測(cè)試過一下,你就知道IS NULL會(huì)使用索引,所以上述說法有漏洞。

著急的人拉到最下邊看結(jié)論

Preface

Null is a special constraint of columns. The columns in table will be added null constrain if you do not define the column with “not null” key words explicitly when creating the table.Many programmers like to define columns by default because of the conveniences(reducing the judgement code of nullibility) what consequently cause some uncertainty of query and poor performance of database.

NULL值是一種對(duì)列的特殊約束,我們創(chuàng)建一個(gè)新列時(shí),如果沒有明確的使用關(guān)鍵字not null聲明該數(shù)據(jù)列,MySQL會(huì)默認(rèn)的為我們添加上NULL約束。

有些開發(fā)人員在創(chuàng)建數(shù)據(jù)表時(shí),由于懶惰直接使用Mysql的默認(rèn)推薦設(shè)置.(即允許字段使用NULL值).而這一陋習(xí)很容易在使用NULL的場(chǎng)景中得出不確定的查詢結(jié)果以及引起數(shù)據(jù)庫性能的下降。

Introduce

Null is null means it is not anything at all,we cannot think of null is equal to ‘’ and they are totally different.

MySQL provides three operators to handle null value:“IS NULL”,“IS NOT NULL”,"<=>" and a function ifnull().

IS NULL: It returns true,if the column value is null.

IS NOT NULL: It returns true,if the columns value is not null.

<=>: It’s a compare operator similar with “=” but not the same.It returns true even for the two null values.

(eg. null <=> null is legal) IFNULL(): Specify two input parameters,if the first is null value then returns the second one.

It’s similar with Oracle’s NVL() function.

NULL并不意味著什么都沒有,我們要注意 NULL''(空值)是兩個(gè)完全不一樣的值,MySQL中可以操作NULL值操作符主要有三個(gè)。

  • IS NULL
  • IS NOT NULL
  • <=> 太空船操作符,這個(gè)操作符很像=,select NULL<=>NULL可以返回true,但是select NULL=NULL返回false.
  • IFNULL 一個(gè)函數(shù).怎么使用自己查吧…反正我會(huì)了

Example

Null never returns true when comparing with any other values except null with “<=>”.

NULL通過任一操作符與其它值比較都會(huì)得到NULL,除了<=>.

?1?(root@localhost?mysql3306.sock)[zlm]>create?table?test_null(
?2?????->?id?int?not?null,
?3?????->?name?varchar(10)
?4?????->?);
?5?Query?OK,?0?rows?affected?(0.02?sec)
?6?
?7?(root@localhost?mysql3306.sock)[zlm]>insert?into?test_null?values(1,'zlm');
?8?Query?OK,?1?row?affected?(0.00?sec)
?9?
10?(root@localhost?mysql3306.sock)[zlm]>insert?into?test_null?values(2,null);
11?Query?OK,?1?row?affected?(0.00?sec)
12?
13?(root@localhost?mysql3306.sock)[zlm]>select?*?from?test_null;
14?+----+------+
15?|?id?|?name?|
16?+----+------+
17?|??1?|?zlm??|
18?|??2?|?NULL?|
19?+----+------+
20?2?rows?in?set?(0.00?sec)
21?//?-------------------------------------->這個(gè)很有代表性<----------------------
22?(root@localhost?mysql3306.sock)[zlm]>select?*?from?test_null?where?name=null;
23?Empty?set?(0.00?sec)
24?
25?(root@localhost?mysql3306.sock)[zlm]>select?*?from?test_null?where?name?is?null;
26?+----+------+
27?|?id?|?name?|
28?+----+------+
29?|??2?|?NULL?|
30?+----+------+
31?1?row?in?set?(0.00?sec)
32?
33?(root@localhost?mysql3306.sock)[zlm]>select?*?from?test_null?where?name?is?not?null;
34?+----+------+
35?|?id?|?name?|
36?+----+------+
37?|??1?|?zlm??|
38?+----+------+
39?1?row?in?set?(0.00?sec)
40?
41?(root@localhost?mysql3306.sock)[zlm]>select?*?from?test_null?where?null=null;
42?Empty?set?(0.00?sec)
43?
44?(root@localhost?mysql3306.sock)[zlm]>select?*?from?test_null?where?null<>null;
45?Empty?set?(0.00?sec)
46?
47?(root@localhost?mysql3306.sock)[zlm]>select?*?from?test_null?where?null<=>null;
48?+----+------+
49?|?id?|?name?|
50?+----+------+
51?|??1?|?zlm??|
52?|??2?|?NULL?|
53?+----+------+
54?2?rows?in?set?(0.00?sec)
55??//null<=>null?always?return?true,it's?equal?to?"where?1=1".??
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455

Null means “a missing and unknown value”.Let’s see details below.

NULL代表一個(gè)不確定的值,就算是兩個(gè)NULL,它倆也不一定相等.(像不像C中未初始化的局部變量)

?1?(root@localhost?mysql3306.sock)[zlm]>SELECT?0?IS?NULL,?0?IS?NOT?NULL,?''?IS?NULL,?''?IS?NOT?NULL;
?2?+-----------+---------------+------------+----------------+
?3?|?0?IS?NULL?|?0?IS?NOT?NULL?|?''?IS?NULL?|?''?IS?NOT?NULL?|
?4?+-----------+---------------+------------+----------------+
?5?|?????????0?|?????????????1?|??????????0?|??????????????1?|
?6?+-----------+---------------+------------+----------------+
?7?1?row?in?set?(0.00?sec)
?8?
?9?//It's?not?equal?to?zero?number?or?vacant?string.
10?//In?MySQL,0?means?fasle,1?means?true.
11?
12?(root@localhost?mysql3306.sock)[zlm]>SELECT?1?=?NULL,?1?<>?NULL,?1??NULL;
13?+----------+-----------+----------+----------+
14?|?1?=?NULL?|?1?<>?NULL?|?1??NULL?|
15?+----------+-----------+----------+----------+
16?|?????NULL?|??????NULL?|?????NULL?|?????NULL?|
17?+----------+-----------+----------+----------+
18?1?row?in?set?(0.00?sec)
19?
20?//It?cannot?be?compared?with?number.
21?//In?MySQL,null?means?false,too.
123456789101112131415161718192021

It truns null as a result if any expression contains null value.

任何有返回值的表達(dá)式中有NULL參與時(shí),都會(huì)得到另外一個(gè)NULL值.

?1?(root@localhost?mysql3306.sock)[zlm]>select?ifnull(null,'First?is?null'),ifnull(null+10,'First?is?null'),ifnull(concat('abc',null),'First?is?null');
?2?+------------------------------+---------------------------------+--------------------------------------------+
?3?|?ifnull(null,'First?is?null')?|?ifnull(null+10,'First?is?null')?|?ifnull(concat('abc',null),'First?is?null')?|
?4?+------------------------------+---------------------------------+--------------------------------------------+
?5?|?First?is?null????????????????|?First?is?null???????????????????|?First?is?null??????????????????????????????|
?6?+------------------------------+---------------------------------+--------------------------------------------+
?7?1?row?in?set?(0.00?sec)
?8?
?9???//null?value?needs?to?be?disposed?with?ifnull()?function,what?usually?causes?sql?statement?more?complex.
?10??//As?we?all?know,MySQL?does?not?support?funcion?index.Therefore,indexes?on?the?column?may?not?be?used.That's?really?worse.
12345678910

It’s diffrent when using count() & count(null column).

使用count(*) 或者 count(null column)結(jié)果不同,count(null column)<=count(*).

?1?(root@localhost?mysql3306.sock)[zlm]>select?count(*),count(name)?from?test_null;
?2?+----------+-------------+
?3?|?count(*)?|?count(name)?|
?4?+----------+-------------+
?5?|????????2?|???????????1?|
?6?+----------+-------------+
?7?1?row?in?set?(0.00?sec)
?8?
?9?//count(*)?returns?all?rows?ignore?the?null?while?count(name)?returns?the?non-null?rows?in?column?"name".
10?//?This?will?also?leads?to?uncertainty?if?someone?is?unaware?of?the?details?above.
?如果使用者對(duì)NULL屬性不熟悉,很容易統(tǒng)計(jì)出錯(cuò)誤的結(jié)果.
1234567891011

When using distinct,group by,order by,all null values are considered as the same value.

雖然select NULL=NULL的結(jié)果為false,但是在我們使用distinct,group by,order by時(shí),NULL又被認(rèn)為是相同.

?1?(root@localhost?mysql3306.sock)[zlm]>insert?into?test_null?values(3,null);
?2?Query?OK,?1?row?affected?(0.00?sec)
?3?
?4?(root@localhost?mysql3306.sock)[zlm]>select?distinct?name?from?test_null;
?5?+------+
?6?|?name?|
?7?+------+
?8?|?zlm??|
?9?|?NULL?|
10?+------+
11?2?rows?in?set?(0.00?sec)
12?
13?//Two?rows?of?null?value?returned?one?and?the?result?became?two.
14?
15?(root@localhost?mysql3306.sock)[zlm]>select?name?from?test_null?group?by?name;
16?+------+
17?|?name?|
18?+------+
19?|?NULL?|
20?|?zlm??|
21?+------+
22?2?rows?in?set?(0.00?sec)
23?
24?//Two?rows?of?null?value?were?put?into?the?same?group.
25?//By?default,group?by?will?also?sort?the?result(null?row?showed?first).
26?
27?(root@localhost?mysql3306.sock)[zlm]>select?id,name?from?test_null?order?by?name;
28?+----+------+
29?|?id?|?name?|
30?+----+------+
31?|??2?|?NULL?|
32?|??3?|?NULL?|
33?|??1?|?zlm??|
34?+----+------+
35?3?rows?in?set?(0.00?sec)
36?
37?//Three?rows?were?sorted(two?null?rows?showed?first).?
12345678910111213141516171819202122232425262728293031323334353637

MySQL supports to use index on column which contains null value(what’s different from oracle).

MySQL中支持在含有NULL值的列上使用索引,但是Oracle不支持.這就是我們平時(shí)所說的如果列上含有NULL那么將會(huì)使索引失效。

嚴(yán)格來說,這句話對(duì)與MySQL來說是不準(zhǔn)確的。這個(gè)題我在 MySQL 系列面試題中也分享過答案,關(guān)注公眾號(hào)Java技術(shù)棧回復(fù)面試,可以獲取更多 MySQL 面試題。

?1?(root@localhost?mysql3306.sock)[sysbench]>show?tables;
?2?+--------------------+
?3?|?Tables_in_sysbench?|
?4?+--------------------+
?5?|?sbtest1????????????|
?6?|?sbtest10???????????|
?7?|?sbtest2????????????|
?8?|?sbtest3????????????|
?9?|?sbtest4????????????|
10?|?sbtest5????????????|
11?|?sbtest6????????????|
12?|?sbtest7????????????|
13?|?sbtest8????????????|
14?|?sbtest9????????????|
15?+--------------------+
16?10?rows?in?set?(0.00?sec)
17?
18?(root@localhost?mysql3306.sock)[sysbench]>show?create?table?sbtest1\G
19?***************************?1.?row?***************************
20????????Table:?sbtest1
21?Create?Table:?CREATE?TABLE?`sbtest1`?(
22???`id`?int(11)?NOT?NULL?AUTO_INCREMENT,
23???`k`?int(11)?NOT?NULL?DEFAULT?'0',
24???`c`?char(120)?NOT?NULL?DEFAULT?'',
25???`pad`?char(60)?NOT?NULL?DEFAULT?'',
26???PRIMARY?KEY?(`id`),
27???KEY?`k_1`?(`k`)
28?)?ENGINE=InnoDB?AUTO_INCREMENT=100001?DEFAULT?CHARSET=utf8
29?1?row?in?set?(0.00?sec)
30?
31?(root@localhost?mysql3306.sock)[sysbench]>alter?table?sbtest1?modify?k?int?null,modify?c?char(120)?null,modify?pad?char(60)?null;
32?Query?OK,?0?rows?affected?(4.14?sec)
33?Records:?0??Duplicates:?0??Warnings:?0
34?
35?(root@localhost?mysql3306.sock)[sysbench]>insert?into?sbtest1?values(100001,null,null,null);
36?Query?OK,?1?row?affected?(0.00?sec)
37?
38?(root@localhost?mysql3306.sock)[sysbench]>explain?select?id,k?from?sbtest1?where?id=100001;
39?+----+-------------+---------+------------+-------+---------------+---------+---------+-------+------+----------+-------+
40?|?id?|?select_type?|?table???|?partitions?|?type??|?possible_keys?|?key?????|?key_len?|?ref???|?rows?|?filtered?|?Extra?|
41?+----+-------------+---------+------------+-------+---------------+---------+---------+-------+------+----------+-------+
42?|??1?|?SIMPLE??????|?sbtest1?|?NULL???????|?const?|?PRIMARY???????|?PRIMARY?|?4???????|?const?|????1?|???100.00?|?NULL??|
43?+----+-------------+---------+------------+-------+---------------+---------+---------+-------+------+----------+-------+
44?1?row?in?set,?1?warning?(0.00?sec)
45?
46?(root@localhost?mysql3306.sock)[sysbench]>explain?select?id,k?from?sbtest1?where?k?is?null;
47?+----+-------------+---------+------------+------+---------------+------+---------+-------+------+----------+--------------------------+
48?|?id?|?select_type?|?table???|?partitions?|?type?|?possible_keys?|?key??|?key_len?|?ref???|?rows?|?filtered?|?Extra????????????????????|
49?+----+-------------+---------+------------+------+---------------+------+---------+-------+------+----------+--------------------------+
50?|??1?|?SIMPLE??????|?sbtest1?|?NULL???????|?ref??|?k_1???????????|?k_1??|?5???????|?const?|????1?|???100.00?|?Using?where;?Using?index?|
51?+----+-------------+---------+------------+------+---------------+------+---------+-------+------+----------+--------------------------+
52?1?row?in?set,?1?warning?(0.00?sec)
53?
54?//In?the?first?query,the?newly?added?row?is?retrieved(檢索)?by?primary?key.
55?//In?the?second?query,the?newly?added?row?is?retrieved?by?secondary?key?"k_1"
56?//?It?has?been?proved?that?indexes?can?be?used?on?the?columns?which?contain?null?value.
???通過explain?可以看到?mysql支持含有NULL值的列上使用索引?
57?//column?"k"?is?int?datatype?which?occupies?4?bytes,but?the?value?of?"key_len"?turn?out?to?be?5.
???//?what's?happed?Because?null?value?needs?1?byte?to?store?the?null?flag?in?the?rows.
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859

這個(gè)是我自己測(cè)試的例子:

mysql>?select?*?from?test_1;
+-----------+------+------+
|?name??????|?code?|?id???|
+-----------+------+------+
|?gaoyi?????|?wo???|????1?|
|?gaoyi?????|?w????|????2?|
|?chuzhong??|?wo???|????3?|
|?chuzhong??|?w????|????4?|
|?xiaoxue???|?dd???|????5?|
|?xiaoxue???|?dfdf?|????6?|
|?sujianhui?|?su???|???99?|
|?sujianhui?|?NULL?|???99?|
+-----------+------+------+
8?rows?in?set?(0.00?sec)

mysql>?explain?select?*?from?test_1?where?code?is?NULL;
+----+-------------+--------+------------+------+---------------+------------+---------+-------+------+----------+-----------------------+
|?id?|?select_type?|?table??|?partitions?|?type?|?possible_keys?|?key????????|?key_len?|?ref???|?rows?|?filtered?|?Extra?????????????????|
+----+-------------+--------+------------+------+---------------+------------+---------+-------+------+----------+-----------------------+
|??1?|?SIMPLE??????|?test_1?|?NULL???????|?ref??|?index_code????|?index_code?|?161?????|?const?|????1?|???100.00?|?Using?index?condition?|
+----+-------------+--------+------------+------+---------------+------------+---------+-------+------+----------+-----------------------+
1?row?in?set,?1?warning?(0.00?sec)

mysql>?explain?select?*?from?test_1?where?code?is?not?NULL;
+----+-------------+--------+------------+-------+---------------+------------+---------+------+------+----------+-----------------------+
|?id?|?select_type?|?table??|?partitions?|?type??|?possible_keys?|?key????????|?key_len?|?ref??|?rows?|?filtered?|?Extra?????????????????|
+----+-------------+--------+------------+-------+---------------+------------+---------+------+------+----------+-----------------------+
|??1?|?SIMPLE??????|?test_1?|?NULL???????|?range?|?index_code????|?index_code?|?161?????|?NULL?|????7?|???100.00?|?Using?index?condition?|
+----+-------------+--------+------------+-------+---------------+------------+---------+------+------+----------+-----------------------+
1?row?in?set,?1?warning?(0.00?sec)

mysql>?explain?select?*?from?test_1?where?code='dd';
+----+-------------+--------+------------+------+---------------+------------+---------+-------+------+----------+-----------------------+
|?id?|?select_type?|?table??|?partitions?|?type?|?possible_keys?|?key????????|?key_len?|?ref???|?rows?|?filtered?|?Extra?????????????????|
+----+-------------+--------+------------+------+---------------+------------+---------+-------+------+----------+-----------------------+
|??1?|?SIMPLE??????|?test_1?|?NULL???????|?ref??|?index_code????|?index_code?|?161?????|?const?|????1?|???100.00?|?Using?index?condition?|
+----+-------------+--------+------------+------+---------------+------------+---------+-------+------+----------+-----------------------+
1?row?in?set,?1?warning?(0.00?sec)

mysql>?explain?select?*?from?test_1?where?code?like?"dd%";
+----+-------------+--------+------------+-------+---------------+------------+---------+------+------+----------+-----------------------+
|?id?|?select_type?|?table??|?partitions?|?type??|?possible_keys?|?key????????|?key_len?|?ref??|?rows?|?filtered?|?Extra?????????????????|
+----+-------------+--------+------------+-------+---------------+------------+---------+------+------+----------+-----------------------+
|??1?|?SIMPLE??????|?test_1?|?NULL???????|?range?|?index_code????|?index_code?|?161?????|?NULL?|????1?|???100.00?|?Using?index?condition?|
+----+-------------+--------+------------+-------+---------------+------------+---------+------+------+----------+-----------------------+
1?row?in?set,?1?warning?(0.00?sec)
12345678910111213141516171819202122232425262728293031323334353637383940414243444546

Summary 總結(jié)

null value always leads to many uncertainties when disposing sql statement.It may cause bad performance accidentally.

列中使用NULL值容易引發(fā)不受控制的事情發(fā)生,有時(shí)候還會(huì)嚴(yán)重托慢系統(tǒng)的性能.

例如:

  • null value will not be estimated in aggregate function() which may cause inaccurate results. 對(duì)含有NULL值的列進(jìn)行統(tǒng)計(jì)計(jì)算,eg. count(),max(),min(),結(jié)果并不符合我們的期望值.
  • null value will influence the behavior of the operations such as “distinct”,“group by”,“order by” which causes wrong sort. 干擾排序,分組,去重結(jié)果.
  • null value needs ifnull() function to do judgement which makes the program code more complex. 有的時(shí)候?yàn)榱讼?code style="font-size: 14px;padding: 2px 4px;border-radius: 4px;margin-right: 2px;margin-left: 2px;color: rgb(30, 107, 184);background-color: rgba(27, 31, 35, 0.05);font-family: "Operator Mono", Consolas, Monaco, Menlo, monospace;word-break: break-all;">NULL帶來的技術(shù)債務(wù),我們需要在SQL中使用IFNULL()來確保結(jié)果可控,但是這使程序變得復(fù)雜.
  • null value needs a extra 1 byte to store the null information in the rows.NULL值并是占用原有的字段空間存儲(chǔ),而是額外申請(qǐng)一個(gè)字節(jié)去標(biāo)注,這個(gè)字段添加了NULL約束.(就像額外的標(biāo)志位一樣)

As these above drawbacks,it’s not recommended to define columns with default null. We recommand to define “not null” on all columns and use zero number & vacant string to substitute relevant data type of null.

根據(jù)以上缺點(diǎn),我們并不推薦在列中設(shè)置NULL作為列的默認(rèn)值,你可以使用NOT NULL消除默認(rèn)設(shè)置,使用0或者''空字符串來代替NULL。這個(gè)題我在 MySQL?系列面試題中也分享過答案,關(guān)注公眾號(hào)Java技術(shù)?;貜?fù)面試,可以獲取更多 MySQL 面試題。

參考:https://www.cnblogs.com/aaron8219/p/9259379.html

來源:https://blog.csdn.net/qq_30549099/article/details/107395521






關(guān)注Java技術(shù)??锤喔韶?/strong>



戳原文,獲取精選面試題!
瀏覽 34
點(diǎn)贊
評(píng)論
收藏
分享

手機(jī)掃一掃分享

分享
舉報(bào)
評(píng)論
圖片
表情
推薦
點(diǎn)贊
評(píng)論
收藏
分享

手機(jī)掃一掃分享

分享
舉報(bào)

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

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 97人人爽人人爽人人爽人人爽 | 噜噜噜色| 欧美国产综合| 成人色色视频| 日韩在线看片| 亚洲高清视频在线| 午夜免费福利视频| 黄色A片电影| 久久综合九九| 青青草视频免费在线观看| 手机看片1024国产| 欲色AV| 亚洲中文无码在线观看| 欧美成人高清视频| 欧美操屄视频| 亚洲AV成人电影| 嫩小槡BBBB槡BBBB槡漫画| 国产精品超碰| ww毛片| 午夜精品久久久久久久99黑人| 啪啪成人视频| 亚洲AV无码成人精品区大猫| 免费观看色情视频| 久久久精品网站| EEUSS| 国产精品一区二区黑人巨大| 尤物视频官网| 99色逼| 天天日夜夜拍| 天天伊人| 成年人视频网| 中文字幕第5页| 亚洲日本中文字幕在线| 久久成人导航| 国产美女久久久| 安微妇搡BBBB搡BBBB| 免费一级A片在线观看视频| 97午夜福利视频| 人人妻人人操人人| 国产精品探花熟女| 操操网| 操逼逼AV| 中国免费一级无码成人片| 国产精品久久久| 激情爱爱网站| 日韩免费视频在线观看| 26uuu国产| 有码在线| 五月天综合在线| 水蜜桃网址| 人人操日本| 日韩成人一区二区三区| 免费观看黄色网| 国产成人综合网| 久久久久国产精品视频| 狼友精品| 国产美女激情视频| 三级片网站大全| www.欧美精品| 97在线观看免费| 免费福利视频网站| 大香蕉性爱视频| 亚洲视频在线观| 伊人久色| 久久人体视频| 欧美日韩成人在线| 中文字幕免费MV第一季歌词| 三级片久久| 91精品日韩| av福利电影在线| 九九热av| 婷婷五月18永久免费视频| 亚洲熟女视频| 国产精品啪啪啪啪| 久久精品三级片| 精品人妻一区二区免费蜜桃| 色一区二区| 日本精品黄色视频| 最新免费毛片| 激情视频在线免费观看| 国产成人午夜视频| 天天做天天爱天天高潮| 人妻AV一区| 撸撸操在线视频观看只有精品| 五月丁香999| 中文字幕亚洲观看| 黄片福利| 呦小性Free小U女HD| 男女啪啪网站| 91人妻人人澡人人爽人人精| 国产狼友| 中文字幕在线观看视频www| 日韩五码在线| 色吧五月| 99久视频| 久久8| 欧美footjob高跟脚交| av手机版| 国产精品久免费的黄网站| 精品无码视频| 色九九九九| 亚洲无码在线观看视频| 亚洲中字幕| 国产精品久久久久久久久借妻| 欧美精品久久久久久久久老牛影院 | 久久伊思人在| 欧美footjob| 五月天婷婷av| 少妇搡BBBB搡BBB搡毛片少妇| 亚洲欧美色图| 无码视频一区二区三区| 久草com| 三级免费无限AV| 欧美性爱小说网| 国产系列第一页| 丁香六月婷婷| 色五月婷婷综合| 日韩AV电影网站| 国产欧美日韩综合| 一级A爱爱| 仓井空一区二区| 无码网站内射| 超碰av在线| 色呦呦在线| 精品无码不卡| 色mm在线播放| 97国产精品视频| 成人精品123| 操逼网视频| GOGO人体做爰大胆视频| 国产jk在线| 日韩黄色精品| 北条麻妃一区二区三区在线观看| 久久久久久AV| 大香蕉欧美在线| 人人舔人人爱| 女孩自慰在线观看| 一级A片一毛片大全| 超碰一区| 天天操夜夜操狠狠| 青青娱乐亚洲无| 免费性爱视频网站| 一级黄色视频免费看| 99爱爱视频| 国产AV日韩| 丰滿老婦BBwBBwBBw| 西西人体444rt高清大胆模特 | 日韩三级一区二区| 欧美日韩三级片| 国产精品成人无码| 日韩黄色免费电影| 日本熟妇无码一区二区| 五月婷婷黄色| 强伦轩人妻一区二区三区70后| 老鸭窝在线观看视频| 国产老女人操逼| 成人一级黄色片| 做爱视频毛片人乱| av资源在线| 国产AⅤ爽aV久久久久成人| 亚洲AV成人无码AV小说| www激情| 日皮视频网站| 91爱爱| 欧美精品综合| 欧美日韩在线视频播放| 99久久久精品| 成人午夜天堂| 欧美一级特黄A片免费观看| 日韩A片在线观看| 蜜臀久久| 久久久一| 91超碰免费在线| 息子交尾一区二区三区| 无码主播| 4080yy午夜理论片成人| 伊人大香蕉在线| 91国产爽黄| 黄色视频网站在线观看免费| 中文字幕一区二区三区日本在线 | 操人妻| 射死你天天日| 91AV免费在线观看| 久草视频在线免费看| 国产婬片一级A片AAA毛片AⅤ | 亚洲国产成人AV| www.俺去啦| 久久久精品少妇| 国内成人自拍| 欧美国产综合在线| 欧美一区二区三区婷婷五月| 黑人操逼视频| 黄色免费大片| 亚洲欧美性爱视频| 日本国产精品| 国产男女啪啪视频| 国产在线视频91| 亚洲无码内射| 奥门黄片| 免费在线亚洲| 亚洲精品成人AV| 高清不卡一区二区| 亚洲日本中文字幕在线观看| 在线观看亚州| 麻豆精品传媒国产剧的特点| 亚洲一级免费免费在线观看| 日本成人性爱视频网站一区| 精品内射| 国产无码高清| 日日干夜夜撸| 伊人在线| 欧美口爆| 午夜A片| 欧美日日日| AV电影在线观看| 青青娱乐亚洲无| 91丝袜一区二区| av一区二区三区| 黄片免费观看网站| 黄片免费观看网站| 免费无码一区二区三区| 51午夜| 华女与黑人91A∨| 无码啪啪啪| 大香蕉网视频| 免费人妻视频| 日本无码嫩草一区二区| 亚洲欧美中文字幕| 久久高清免费视频| 天天操操| 日韩人妻无码一区二区三区中文 | 91久久99久久91熟女精品| 懂色aV| 蜜桃一区二区三区| 黄片视频大全| 九九热毛片在线观看| 日韩人妻无码一区二区三区七区| 国产无码成人电影| 影音av在线| 久久成人久久| 亚洲四房播| 国产系列精品AV| 加勒比无码视频| 天天艹天天干| 操逼电影网站| 成人肏屄视频| 色呦呦中文字幕| 黄色成人在线视频| 久操久操| 青青草资源站| 亚洲自拍天堂| 一区高清| 91A视频| 亚洲女人视频| 欧美操逼视频网站| 久久成人免费| 国产av一区二区三区| 国产免费黄色av| 午夜成人黄色电影| 无码秘蜜桃一区二区三区| 日韩永久免费| 国产伦子伦一级A片在线| 大地影院资源官网| 一级黄色视频在线观看| 欧美一区二区三区视频| 久久久精品黄色网址| 久久系列观看完整指南| 超碰人人搞| 亚洲一卡二卡三卡四卡免| 四虎成人免费视频| 日韩久久免费视频| 精产国品一区二区区别| 韩国日本久久| 婷婷五月天成人社区| 中文在线最新版天堂8| 超碰碰人人| 日韩无码视屏| 黄色网页在线免费观看| 亚洲无码高清视频在线观看| 国产精品久久久久久久久久| 五月色视频| 九九99精品视频| 日韩黄网站| 日本親子亂子倫XXXX50路 | 一二区无码| 免费的av| 日韩中文字幕一区二区三区| 国产一级性爱| 免费无码又爽又黄又刺激网站| 国产综合久久777777麻豆| 中文字幕福利| 婷婷天堂| 久久理论电影| 尤物视频在线观看视频| 91九色首页| 国产精品无码永久免费不卡| 辽宁模特张雪馨视频最新| 乱伦乱伦乱伦中文字幕| 五月丁香婷婷基地| 东方AV在线播放| 久久精品福利| 级婬片AAAAAAA免费| 国內精品久久久久久久| 99热最新在线| 精品秘无码一区二区三区老师| 欧美精品一区二区三区蜜臀| 一级AA视频| 超碰99热| 亚洲日韩视频| 无码色网| 亚洲国产精品午夜福利| 午夜国产在线| 91精品国际| 伊人操逼| 免费高清无码在线观看| 男人天堂99| 爱爱视频天天操| 精品国产三级片| 国内操逼视频| 中国老熟女2老女人| 97精品超碰一区二区三区| 在线内射| 蜜桃BBwBBWBBwBBw| 老鸭窝av免费入口在线观看| 天天日av| 日本免费在线观看| 精品久久久久久久| 精品三级网站| 一级特黄妇女高潮AA片免费播放| 欧美丰满少妇人妻精品| 欧美成人电影| 久久学生妹| 深夜无码| 欧美色图亚洲另类| 色色一区二区| 亚洲一区二区视频| 免费无码婬片AAAAA片| 黄色免费在线观看| 超碰欧美| 中文激情网| 午夜性爱剧场| 草久精品| 免费69视频看片| 欧美另类视频| 操日韩美女| 国产亚洲欧美精品综合在线| 天天操B| 黄色视频在线观看地址| 一区二区三区四区免费观看| 影音先锋无码AV| 特级西西444WWW无码视频兔费看 | 91麻豆精品国产91久久久吃药| 在线观看无码| 精品久久大香蕉| 欧美一级免费| 欧美日逼小视频| 九色蝌蚪视频| 一区二区三区四区五区在线| 蜜桃无码在线| 欧美成人午夜| 伊人性视频| 美腿丝袜中文字幕精品| 超碰在线免费| 丁香五月婷婷中文字幕| 激情视频网站| 日韩av免费在线| 亚洲AV男人天堂| 日本少妇性爱视频| 微拍福利一区| 就爱操逼网| 波多野结衣视频一区| 日韩三级| 中文字幕日本无码| 黄网站免费观看| 亚洲另类图片小说| 国产综合视频| 波多野结衣AV在线观看| 亚洲中文无码字幕| 无码免费中文字幕| 十八禁黄网站| 一级二级无码| 国产精品无码专区AV免费播放| 最新97色黄色精品高清网站| ww毛片| 国产精品视频免费观看| 欧洲亚洲在线| 久久午夜无码鲁丝片午夜精品偷窥 | 无码爱爱视频| 91香蕉视频在线看| 成人黄网免费观看视频| 日韩v亚洲| 人人澡人人干| 日本爱爱片| 91人妻人人澡| 18成人网站在线观看| 亚洲激情网| 日韩a在线观看| a片在线免费观看| 免费日韩无码| 中文字幕一级A片免费看| 啪啪网站免费观看| 久久人精品| 五月婷婷无码| 一本色道久久综合熟妇人妻| 免费在线观看a| 无码在线播放视频| 西西444www| 手机看片亚洲| 美女网站黄| 久热青草| 国产成人三级在线| 日本欧美亚洲| 亚洲无码乱码av| 日韩毛片视频| 乱伦五月| 天堂无吗| 久久久久无码精品亚洲日韩| 18成人网站在线观看| 国产免费一区二区三区| 欧美性爱天天操| 91九色精品女同系列| 大香蕉官网| 四虎看片| 国产激情视频| 久久久久久久网站| 成人毛片一区二区三区无码| 91无码人妻传媒tv| 西西444WWW无码大胆知乎| 久久九九免费视频| 婷婷视频在线| 操逼网五月天| 美日毛片| 日韩免费三级片| 三级成人视频| 国产人国产视频成人免费观看…| 无码精品视频在线观看| 欧美做受高潮白| 抽插视频欧美| 丁香五月影院| 欧美三级无码| 天天射夜夜骑| 国产传媒在线| 亚州在线中文字幕经典a| 国产欧美在线观看不卡| 91综合视频| 一区免费在线观看| 亚洲任你操超碰在线| 久操操| 一级黄色片网站| 国家一级A片| 亚洲一区在线播放| 国产成人自拍视频在线观看| 久操手机在线| 在线观看黄色片| 日一日干一干| 天天爱天天插| 6969电视影片最新更新| 青青操逼视频| 无码入口| 9l人人澡人人妻人人精品| 欧美色网| 精品码一区二在线观看| 韩国免费一级a一片在线播放| 国产一级免费在线观看| 蜜柚AV| 黄片大全免费看| 加勒比无码视频| 77q视频| 在线视频a| 日本在线精品视频| 麻豆一二三区| 三级av网站| 亚洲无码中文字幕在线观看| 2017天天干| 日韩激情av| 亚洲精品自拍视频| 国产午夜男女性爱| 亚洲无码在线免费观看视频| 91色秘乱码一区二区| 国产黄色Av| 日日操天天操夜夜操| www操逼| 亚洲乱| 夫妻-ThePorn| 91视频首页| 日本无码久久嗯啊流水| 亚洲永久| 99色网站| 亚洲成色A片77777在线小说| 成人永久免费视频| 日韩色妇| 超碰天天干天天摸| 影音先锋aV成人无码电影| 1024国产| 一区二区在线看| 夜夜撸天天操| 欧美日韩一区二区三区视频| 加勒比日日综合| 日韩视频一区二区三区| 北条麻妃无码精品| 人人射人人爱| 国产又黄又| 亚洲最新在线观看| 日韩无码高清免费视频| 国产操逼网站| 特级西西444WWW大精品视频 | 天天干天天色| 激情综合视频| 免费黄色av网址| 欧美老妇大BBBBXXXX| 国产成人综合自拍| 婷婷五月天激情网| 香蕉视频国产| 天堂中文资源在线| 桃色一区| 97精品在线观看| 水果派解说av| 中文字幕牛牛婷婷| 91高潮久久久久久久| 欧美一级做| 一级性生活视频| 综合色国产精品欧美在线观看| 中文字幕亚洲视频| 91乱子伦国产乱子伦| 怡春院成人| 亚洲无码黄片| 国产亚洲日韩在线| 免费日韩视频| 老婆被黑人杂交呻吟视频| 99久热在线精品视频| 亚洲vs无码秘蜜桃| 久久久久黄片| 中字AV| 91视频福利| 国产精品啪啪啪啪| 制服.丝袜.亚洲.中文.豆花| 欧美日韩一区二区三区四区五区六区| 欧美久久一区二区三区四区视频| 国产操老女人| 亚洲在线视频| 操逼综合网| 无码视频播放| 成人网站在线观看免费| 亚洲在线中文字幕| 日逼黄片| AV解说| 一区二区在线视频| 在线观看视频一区| 黄片网站免费观看| 亚州精品无码| 青青草原在线视频| 在线免费观看黄色视频| 99热| 狼人色影院| 国产主播精品在线| 三级无码av| 国产乱伦精品视频| 国产一级特黄| jizz在线视频| 人人色人人黄| 一区无码高清| 天堂网婷婷| 日本黄色视频免费| 人人看人人搂人人摸| 热久久91| 久久久久久久久久8888| 日韩在线视频免费| 97国产精品视频| 亚洲精品国产精品国自产在线| 中文字幕一区二区三区精华液| 天堂中文在线视频| 青青国产| 无码高清| 日韩无码播放| 91中文字幕在线| 中文字幕不卡+婷婷五月| 国产18| 大香蕉av在线| 国产AV资源| 日韩操逼视频| 99re视频播放| 国产三级AV在线观看| 国产精品毛片一区视频播| 国产人妻精品一区二区三区不卡 | 99re在线观看| 久久久精品| 久久电影五月天| 精品國產一區二區三區久久蜜月 | 午夜国产精品AV| 黄色大片中国一级片-免费看特一级片-亚洲黄色AV | 欧美成人性色欲影院| 中文字幕精品一区久久久久| 日本在线视频不卡| 在线观看中文字幕一区| 欧美h在线观看| 国产区在线| 国产做受91一片二片老头| 日韩在线一级| 麻豆国产精品| 亚洲精品999| 日屁视频| 国产免费一区二区三区四区六区在线| www.操操网| 亚洲av高清| 日韩AV中文字幕在线播放| 99久久久国产| 三级片小说| 亚洲无码高清在线观看| 欧美性猛交一区二区三区精品| 亚洲国产精品18久久久久久 | 精品无码在线| 99中文字幕| 国产乱伦片、| 精品91在线视频| 欧美午夜成人一区二区三区| 国产精品久久久久久久久久九秃| 俺去俺来也www色视频| 国产毛片久久久久久国产毛片 | 国产一级A片免费视频| 国产无码高清视频| 精品乱码一区| 高H网站| 超碰97av| 日本无码专区| 中文爱爱视频| 亚洲AV国产| 日本少妇做爱| 高清免费无码视频| 成人区123| 亚洲第一成网站| 日韩精品一区二区三区黄冈站长| 日韩午夜| 一本色道88久久加勒比精品| 国产一级片免费视频| 五月天乱伦小说| 特级西西444www高清| 俺去搞| 国产av综合网| 大香蕉久久久久久| 操逼免费观看| 91宗合| 围内精品久久久久久久久久‘变脸| 啊啊啊国产| 麻豆MD传媒MD0071| 亚洲黄色在线观看视频| 中文字幕在线网| 国内精品国产成人国产三级| 日韩久久久| 水蜜桃视频在线| 嫩BBB搡BBB搡BBB搡| 黑人av在线观看| 亚洲在线成人视频| 亚洲免费网| 日韩在线中文字幕亚洲| 国产欧美日韩在线播放| 日韩高清无码不卡| 国产亚洲aⅴ| 操人视频网站| 在线观看欧美日韩| 狠狠躁日日躁夜夜躁A片视频| 成人在线一区二区三区| 日韩无码A片| 中文字幕黑人无码| 色视频国产| 日韩A片无码ⅩXXXX| 毛片黄片| 亚洲系列中文字幕| 国产超碰在线| 蜜臀久久99精品久久久久久宅男| AV小说在线观看| 人人妻人人骑| 丁香一区二区| 亚洲AV无码精品| 久久中文字幕电影| 91性爱视频在线观看| 精品国产三级| 亚洲性爱大全| 久久久久久久成人| 亚洲不卡| 怡春院院成人免费视频| 午夜成人精品视频| 人人操91| 欧美婷婷五月天| 欧美插插插| 欧美激情影院| 一插菊花综合网| 麻豆亚洲| 精品大香蕉| 国产美女被爽到高潮免费A片软件 国产无遮挡又黄又爽又色视频软件 | 国产一级黄色录像| 丝袜足交视频在线观看| 在线网址你懂的| 人人射| 国产av中文| 9118禁| 一本一道波多野结衣潮喷视频| 成人A片免费看| 国产一二三区在线| 国产在线视频一区| 国产AV大香蕉| 中文字幕无码日韩| 土牛AV| 91亚洲精品在线观看| 99热最新| 天堂资源在线观看| 狠狠干| 182av| 亚洲成人在线播放| 韩国人妻无码| 人人爱人人摸| 天天艹天天干| 91综合在线| 中国婬乱a| 好吊视频一区二区三区| 国产一级a一片成人AV| 一区二区视频免费| 精品中文字幕在线| 亚洲狠狠| 高清无码网址| 亚洲无码三级片在线观看| 国产精品视频免费在线观看| 成人婷婷五月| 无码白浆| 中国免费毛片| 狠狠干大香蕉| 成人做爰100片免费视频| 豆花成人视频| 日韩一区二| 91小电影| 色婷婷中文| 天天射夜夜骑| 人妻成人网| 久久撸在线视频| www.91自拍| 草逼免费看| 大香蕉性爱视频| av网站在线播放| 亚洲无码中文字幕在线观看| AV自拍偷拍| 亚洲日韩国产AV| 日韩性爱视频在线观看| 久久久老熟女一区二区三区91| 99精品视频在线观看免费| 成人永久免费视频| 在线观看免费黄色视频| 无码专区在线观看| 欧美日韩一级在线观看| 农村乱子伦毛片国产乱| 爱爱视频天天操| 国产精品123区| 国产操逼电影| www日本黄色| 青青草免费公开视频| 精品无码一区二区三区蜜桃李宗瑞 | 亚洲国产精品成人综合色在线婷婷 | 日韩视频三区| 亚洲一区二区三| 91热爆在线| 亚洲人气无码AV| 中文字幕在线观看网址最新地址| 国精品无码一区二区三区在线秋菊| 九九大香蕉| 北条麻妃毛片| 亚洲日日夜夜| 人妻无码精品| 五月色丁香| 成年人免费看视频| 中文字幕在线观看av| 337P人体美鮑高清| 人人人妻人人人操| 亚洲无码黄色| 91大奶熟女| 久久嫩草精品久久久久精| 麻豆国产一区二区三区四区| 日本一区二区在线视频| 三级片青青草| 国产色无码网站www色视频| 一级香蕉视频| 青草视频精品| 国产精品无码永久免费不卡| 欧美久久免费| 国产suv精品一区二区6精华液 | 国产一区二区三区免费| 在线观看老湿视频福利| 国产精品视频久久久久| 在线视频a| 永久免费av| 国产色悠悠| 丁香五月天色婷婷| 日屄视频在线观看| 亚洲色偷精品一区二区三区| 欧美一级免费视频| 日韩字幕久久| 人妻FrXXeeXXee护士| 内射婷婷| 成人一级黄色电影| 特黄AAAAAAAA片视频| 国产精品国产精品国产专区不片| 插插插菊花综合网| 国产精品v欧美精品v日韩精品| 操久久| 99久久婷婷国产综合精品电影| 黄网站在线播放| 欧美色女人| 成人国产| 91久| 一级片欧美| 亚洲无码性爱视频| 99热在线观看者| 影音先锋中文字幕资源| 91偷拍视频| 日本一本不卡| 四川美人搡BBw搡BBw| 久热这里只有| 啪啪成人网| 神马午夜精品96| 丁香五月影院| 婷婷99狠狠躁天天| 无码一区二区黑人猛烈视频网站 | 91香蕉视频在线| 日本一区二区三区在线视频| 国产精品揄拍500视频| 久久国产乱子伦精品免费午夜...| 亚洲成人情趣大香蕉| 亚洲欧美大香蕉视频网| 国产一区二区在线视频| 久久久久免费| 青娱乐在线视频精品| 亚洲精品秘一区二区三区影| 十八禁福利网站| 国产精品国内自产拍| 大香蕉av在线| 91AV在线看| av四虎| 大香蕉在线75| 日韩一级片网站| 色色色色AV| 99er这里只有精品| footjobvk| 大香蕉一区二区| 国产一区无码| 激情AV| 亚洲精品人妻在线| 日韩91在线| 麻豆精品传媒2021md| 97人妻精品一区二区三区软件| 一区二区高清无码视频| 狠狠爱av| 青春草视频| 一区二区不卡| 777777国产77777777| 欧美性猛交XXXX乱大交3| 日本综合在线| 国产成人a亚洲精品| 人人操人人搞| 亚洲成人黄色视频| 亚洲日日夜夜| 五月天丁香婷婷视频| 国产精品视频瘾无码| 色人阁人妻中文字幕| 在线观看高清无码| 中文字幕av在线观看| 欧美在线一区二区三区| 婷婷五月天在线播放| 麻豆成人无码精品视频| 成人做爰A片免费看网站| 欧美一区二区三区不卡| 在线观看黄视频| 中国特级毛片| 国产高清中文字幕| 人人色在线观看| av网站在线播放| 天天干天天操天天爽| 一区二区三区无码精品| 99欧美精品| 色777色| 国产九九九视频| 在线成人AV| 亚洲天堂国产| 日韩在线你懂的| 韩国三级片在线| 国产女人18毛片水真多成人如厕 | 一区二区黄色| 免费黄色一级片| 亚洲AV无码成人精品区国产| 亚洲高清无码专区| 自拍偷拍国产| 操b视频网站| 亚洲无码高清在线观看| 日韩国产在线| 乱伦中文| 在线观看日韩三级片av| 国精产品秘一区二区| 三级无码av| 亚洲日韩中文字幕无码| 久久99精品久久久久| 欧美精品三区| 国产精品一级a毛视频| 成人免费操| 国产黄色视频免费在线观看|