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

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

共 26004字,需瀏覽 53分鐘

 ·

2021-08-29 08:53

點擊上方“碼農(nóng)突圍”,馬上關(guān)注

這里是碼農(nóng)充電第一站,回復(fù)“666”,獲取一份專屬大禮包

真愛,請設(shè)置“星標(biāo)”或點個“在看

作者 | guangsu.

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

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

著急的人拉到最下邊看結(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值是一種對列的特殊約束,我們創(chuàng)建一個新列時,如果沒有明確的使用關(guān)鍵字not null聲明該數(shù)據(jù)列,MySQL會默認(rèn)的為我們添加上NULL約束。

有些開發(fā)人員在創(chuàng)建數(shù)據(jù)表時,由于懶惰直接使用Mysql的默認(rèn)推薦設(shè)置.(即允許字段使用NULL值).而這一陋習(xí)很容易在使用NULL的場景中得出不確定的查詢結(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.

MySQLprovides 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 跟 ''(空值)是兩個完全不一樣的值,MySQL中可以操作NULL值操作符主要有三個。

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

Example

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

NULL通過任一操作符與其它值比較都會得到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 // -------------------------------------->這個很有代表性<----------------------
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".  

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

NULL代表一個不確定的值,就算是兩個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, 1 > NULL;
13 +----------+-----------+----------+----------+
14 | 1 = NULL | 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.

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

任何有返回值的表達(dá)式中有NULL參與時,都會得到另外一個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.

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.
 如果使用者對NULL屬性不熟悉,很容易統(tǒng)計出錯誤的結(jié)果.

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時,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). 

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

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

嚴(yán)格來說,這句話對與MySQL來說是不準(zhǔn)確的。

 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.

這個是我自己測試的例子:

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)

Summary 總結(jié)

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

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

例如:

  • null value will not be estimated in aggregate function() which may cause inaccurate results. 對含有NULL值的列進(jìn)行統(tǒng)計計算,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. 有的時候為了消除NULL帶來的技術(shù)債務(wù),我們需要在SQL中使用IFNULL()來確保結(jié)果可控,但是這使程序變得復(fù)雜.
  • null value needs a extra 1 byte to store the null information in the rows.NULL值并是占用原有的字段空間存儲,而是額外申請一個字節(jié)去標(biāo)注,這個字段添加了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ù)以上缺點,我們并不推薦在列中設(shè)置NULL作為列的默認(rèn)值,你可以使用NOT NULL消除默認(rèn)設(shè)置,使用0或者''空字符串來代替NULL。

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

- END -

最近熱文

?  外包干三年,必廢!
? 程序員在深圳買千萬豪宅,被領(lǐng)導(dǎo)知道后,被打2星!
?  知乎:國家何時整治程序員的高薪現(xiàn)象?
?  離職,第 10 天,有點心酸。。。

瀏覽 32
點贊
評論
收藏
分享

手機(jī)掃一掃分享

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

手機(jī)掃一掃分享

分享
舉報

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

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 亚洲成人视频在线观看| 成人无码区免费A片在线软件| 尤物最新网址| 成人性生活视频| 91探花精品偷拍在线播放| 免费一区视频| 高清无码中文字幕在线观看| AV无码高清| 木牛AV| 亚洲日本三级| 3344在线观看免费下载视频| 自拍偷拍网站| 免费观看成人片| 无码人妻一区二区三区在线视频不卡| 亚洲国产三级片| 中文字幕亚洲在线| 天堂成人av| 亚洲精品中文字幕成人片| 亚洲中文字幕2025| 最近中文字幕在线视频| 久久另类TS人妖一区二区免费| 日韩无码影视| 久久婷婷视频| 国产A毛片| 日韩成人黄片| 九九色视频| JIZZJIZZ国产精品喷水| 国产手机精品视频| 国产精品网站在线观看| 色欲天天网| 日本韩国高清无码| 中文在线字幕免费观看电视剧大全| 国产视频福利| 中文字幕+乱码+中文乱码91在线观看 | 精品视频第一页| 日韩一区二区视频| 欧美日韩亚洲另类| 亚洲免费观看高清完整版在线| 日日碰狠狠| 91婷婷在线| 成全在线观看高清的| 国产又爽又黄免费视频免费观看| 无码在线专区| 精品欧美一区二区精品久久| 操b免费| 草榴在线视频| 91九色蝌蚪| 1204手机看片| 在线观看视频黄| 黄色大片AV| 日本A片在线免费观看| 国产高清Av| 伊人综合色| 一级A色情大片| 亚洲无码视频观看| 日本黄色电影在线播放| 97超碰人妻| 抠逼网站| 超碰人人91| 欧美视频免费操逼图。| 日韩无码少妇| 影音先锋亚洲无码| 91无码精品国产AⅤ| 欧美人妻少妇| 国产黄色视频在线播放| 一级特黄大片色| 国产免费乱伦| 日韩电影| 色撸AⅤ| 国产日韩一区二区三区| 日本高清无码| 欧美极品另类| 五月婷婷激情| 色婷婷久久综合| 无码成人片| 在线国产激情视频| 日本无码在线播放| 午夜尤物| 青草视频在线播放| 国产精品午夜在线| 日韩精品成人无码| 成人欧美一区二区三区在线观看| 狠狠操AV| 欧美一级免费A片| 丁香五月天视频| 色999亚洲人成色| 九九国产精品| 亚洲无码在线观看网站| 91亚洲视频在线观看| 九一成人网| 婷婷五月丁香网| 午夜在线无码| 高潮喷水在线观看| 日本A片免费| 免费毛片视频| 久热免费视频在线观看| 偷拍亚洲欧美| 国产三级小视频| 欧美日韩狠狠操在线观看视频| 亚洲91网站| 国产av资源| 欧美成人看片黄a免费看| 三级久久| 大香蕉男人天堂| 日韩AV无码免费| 黄色视频网站在线免费观看| 黄色一级片免费在线观看| 99涩涩| 成人中文字幕在线视频| 免费看黄色视频| 人妻夜夜爽天天爽| 国产AV福利| 中文在线免费看视频| 亚洲最大三级片| 强开小嫩苞一区二区电影| 国产成人A∨| 91色噜噜狠狠色婷婷| 精品成人在线观看| 亚洲无码自拍| 亚洲AV中文无码| 中文字幕在线播放AV| 特级西西44www无码| 国产亚洲精品久久久波多野结衣 | 偷拍综合网| 日本黄色视频网| 日本处女性高潮喷水视频| 特级西西人体WWWWW| 天天爱夜夜爱| 夜夜骚av一区二区三区| 国产一a毛一a免费观看| 大地8免费高清视频观看大全| 欧美第一夜| 伊人大香蕉精品| 中文字幕av在线| 一区二区三区视频在线| 就爱av| 欧美黄色小说| 日韩性爱视频网站| 午夜8050| 婷婷国产成人精品| 嫩草AV| 美女做爱视频网站| 国产一级特黄aaa大片| 波多野结衣成人在线| 免费伊人大香蕉| 中文字幕韩日| 日本免费黄色片| 99做爱| 国产精品无码一区二区三| 狠狠亚洲| 俺也去大香蕉| 日韩三级黄色| 日本三级网址| 国产精品性爱视频| 逼逼网| 日本少妇BBw| 人人操人人色| 一级片免费视频| 老师搡BBBB搡BBB| 人人操人人干人人| 亚洲无码性爱| 精品无码专区| 97人人澡| 久久草视频在线播放| 91人妻人人澡人人精品| 日韩v在线| 影音先锋亚洲AV| 狠狠操夜夜操| 免费观看黄色视频| 亚洲国产精品久久| 91丨九色丨熟女新版| 欧美粗大| 欧美精品国产动漫| 无码视频在线| 91探花视频精选在线播放| 欧美激情片| 无套内射无码| 日韩大片在线| 国产欧美精品在线观看| 99久久九九| 久草加勒比| 人妻黄色视频| 东京热一区二区三区四区| 中国老熟女2老女人| 无码福利| 激情五月天网址| 狠狠操免费视频| 2021天天夜日| 久久综合婷婷| 国产久久免费视频| 狼人综合网| 日本亚洲欧美| 午夜高清| 精品一区二区久久久久久久网站 | 成人在线免费网站| 91久久成人| 日韩在线观看av| 有免费的欧美操逼视频吗| 五月天激情午夜福利| 中文字幕91| 成人性爱视频在线观看| 91露脸熟女四川熟女在线观看 | 国产电影一区二区三区| 国产乱伦自拍| 俺也去也| 免费在线观看无码| 99久免费视频| 五月丁香成人电影| 日韩成人在线看| 久久精品国产亚洲AV麻豆痴男| 国产精品一级| 欧美熟女18| 超碰成人在线观看| 超碰人人射| 亚洲午夜福利在线| 18AV在线观看| 蜜桃视频在线观看视频| aaaaaa在线观看免费高清| 欧美做受高潮白| 国产小视频在线看| 免费观看A级毛片| 无码专区av| 靠逼国产| 天堂久久av| 中字无码AV| 日本四级片| 热久久亚洲中文字幕| 91成人视频| 青青草原av| 18禁网站| 国产在线小视频| 97综合| 亚洲免费观看视频| 亚洲日韩AV在线| 欧美日屄| 黄色在线网站| 91福利在线观看| 欧美色综合| 国产三级视频| 99久热| 午夜福利干B在线免费小视频| 黄色片免费看| 三洞齐开Av在线免费观看| 免费无码视频| 午夜福利手机在线| 91色色网| 欧美自拍一区| 五月丁香在线播放| 激情麻豆| 天天草天天爽| 久9精品| 色哟哟无码精品一区二区三区| 亚洲在线资源| 不卡视频一区| 九九精品热播| www.日韩无码| 国产精品无码天天爽视频| 五月天AV在线| 日韩AV中文| 欧美狂操| 一区二区三区在线免费观看| 国产AV一区二区三区四区| 双飞少妇| 亚洲精品视频在线| 亚洲视频日韩在线观看| 国产老熟女高潮毛片A片仙踪林 | 色婷婷18正码国产| 国产精品秘久久久久久一两个一起| 成人精品电影| 详情:绿帽夫妻多人运动开淫啪-91n | 日韩毛片在线播放| 92丨九色丨偷拍老熟女| 亚洲视频天堂| 免费在线观看黄| 久久久久久久人妻丝袜| 11孩岁女精品A片BBB| 亚洲成a人无码| 国产黄片在线视频| 91人妻无码精品一区二区三区| 四虎性爱视频| 成人动漫一区二区| 欧美精品三级| 在线视频中文字幕| 成人肏逼视频在线| 亚洲视频在线免费| 久久综合17p| 黄色在线免费观看网站| www.黄色片| 国产熟女乱伦视频| 日韩中文字幕在线视频| 爱爱视频日韩| 强伦人妻一区二区三区视频| 国产AV播放| 91超碰免费| 日韩一级黄色| 亚洲乱妇| 秋霞网一区二区| 国产视频成人| 亚洲美女在线观看| 国产一区二| 亚洲欧美成人在线| www.久久网| 国产成人精品a视频一区| 97国产在线观看| 大香蕉黄色网| 色色天堂| JIZZJIZZ国产精品喷水| 青青草免费在线观看| 人人干干| 黄色在线免费观看| 午夜福利av在线| 天天操人人操| 安微妇搡BBBB搡BBBB| 中文字幕日韩在线观看| 亚洲国产精品成人综合色五月| 大香蕉伊人导航| 亚洲网站免费观看| 在线午夜福利| 久草福利| 91女色| 青青操久久| 日韩高清一区二区| 欧美日韩免费在线播放电影在线播放电影在线播放电影免费 | 久久精品国产99精品国产亚洲性色 | 国产A片网站| 自拍偷拍在线视频| 伊人成人视频在线观看| 99精品国产热久久91色欲| 日韩中文在线播放| 欧美性爱综合网| 成人黄网在线观看| 69成人天堂无码免费| 国产一级a毛一级a做免费高清视频| 大香蕉啪啪啪| 欧美一区二区三区系列电影| 五月婷婷丁香在线| 五月天成人社区| av免费观看网站| BBB搡BBB搡BBB搡BBB| 九九偷拍| 波多野结衣高清av久久直播免| 黄色片无码| 成人在线h| AV免费激情影院| 91av在线电影| 激情av在线| np高辣调教视频| 无码人妻久久一区二区三区蜜桃 | 亚洲成人在线视频| 九色丨蝌蚪丨老版熟女| jizzjizz欧美| 亚洲无码高清视频| 国产精品国产三级国产AⅤ中文 | 欧美级毛片高潮| 午夜ww| 人妻无码在线视频| 国产精品视频瘾无码| 日韩三级网| 99er热精品视频| 日韩色妇| 欧美亚洲日韩一区二区三区| 黄色视频| 91中文字幕网| 五月丁香中文字幕| 日本久久不卡| 18禁黄色免费网站| www.zaixianshipin| 怡春院院成人免费视频| 日本黄色视频免费观看| 亚洲jiZZjiZZ日本少妇| 日日夜夜拍| 逼逼AV网站-日韩电影| 狠狠地日| 青青草手机在线视频| 高圆圆一区二区三区| 蜜桃av在线| 69av电影| 日韩三级在线播放| 首页-91n| 成人AV午夜福利| 日韩成人一区二区三区| 国产欧美日韩综合精品| 东北女人操逼视频| 久久久精品电影91| 一二区免费视频| 欧美成人午夜无码A片秀色直播| 亚洲热视频在线观看| 免费69视频| 日韩第22页| 内射国产| 国产在线欧美| 午夜性视频| 国产精品一区一区三区| 亚洲欧美日韩一区二区| 国产a毛一级,a毛一级| 97精品在线视频| 91美女在线观看| 日韩亚洲视频| 黄色爱爱| 一本大道DVD中文字幕| 久久国产精品伦子伦| 无码囯无精品毛片大码| 日本无码片| 操片| 婷婷视频导航| 精品欧美一区二区精品久久| 91日韩视频在线| 亚洲AV永久无码精品| 伊人99在线| 强辱丰满人妻HD中文字幕| 国产乱子伦一区二区三区视频| 丁香五月婷婷综合| 东北奇淫老老妇| 九九九精品视频| 国产视频成人| 中文字幕在线免费| 天堂资源在线观看| 国产欧美日韩成人| 大香蕉精品在线视频| 日韩AV免费网站| 三级a片| 中文字幕亚洲专区| 欧美操B视频| 围内精品久久久久久久久白丝制服| 99视频在线播放| 人人搞人人操| 99热在线观看| 久久精品夜色噜噜亚洲A∨| 中文无码网站| www.91麻豆| 可以看的毛片| 久久午夜无码鲁片午夜精品男男| 91麻豆香蕉| 国产精品探花熟女| 强伦轩人妻一区二区电影| 豆花视频无码| 91精品婷婷国产| 欧美一级aaa| 99精品国产一区二区| 欧美性爱中文字幕| 福利视频三区| 日本三级黄色视频| 91三级| 久久久久久五月天| 亚洲性夜夜天天天天天天| 亚洲午夜久久久久久久久红桃| 日韩无码2024| av麻豆| 久久久久久久大香蕉| 天天射天天干天天| 国产成人在线免费观看| 欧美激情视频一区二区| 欧美成人五月天| 97无码人妻| 欧美深夜福利| 熟妇操逼视频| 一区二区在线视频| 永久免费一区二区| 久草大香蕉在线| 亚洲性爱在线| 欧美精品成人免码在线| 成人小说亚洲一区二区三区| 黄色视频在线观看亚洲一区二区三区免费 | 国产欧美一区二区精品性色超碰| 少妇高潮喷水| 视色AV| 亚洲欧美在线综合| 三级AV在线| 精品一区国产| 91香蕉视频在线看| 丁香婷婷色五月| 综合色播| 成人免费三级| 天堂综合网久久| 色五月激情| 天天天天天天操| 久久免费播放视频| 一级黄色影院| 中国熟妇| 欧美夜夜爽| 91骚| 午夜精品久久久久久久99热精东| 澳门黄片| 中文字幕在线有码| 我和岳m愉情XXXⅩ视频| 狠狠做深爱婷婷久久综合一区| 无码免费视频| 亚洲无码动漫| 天天日,天天干,天天操| 午夜性爱福利视频| 亚洲精品一区二区二区的游戏情况 | 婷婷激情五月天丁香| 影音先锋aV成人无码电影| 久久三| 亚洲无| 人妻懂色av粉嫩av浪潮av| 五月天激情小说| 亚洲色欲色欲www在线成人网| 97AV人妻无码视频二区| 中文一区在线观看| 欧美3P视频| 九九九免费视频| 亚洲精品成人无码毛片| 日韩无码字幕| 青青草小视频| 亚洲天堂2016| 波多野结衣av在线观看窜天猴| 精品操逼| 天天添天天操| 五月天在线观看| 免费无码蜜臀在线观看| 高清无码网站在线观看| 亚洲无码操逼视频| 国产熟妇码AV| 五月综合激情| 无码在线电影| h国产在线| 俺也来www俺也色com| 欧美一级片免费观看| 国产小视频免费在线观看| 强伦人妻一区二区三区| 江苏妇搡BBBB搡BBBB| 蜜臀精品| 天堂а√在线中文在线新版| 国产成人亚洲综合AV婷婷| 国产成人自拍网| 久草三级片| 亚洲一线播放| 国产一级A片| 国产色情性黄片Av网站| AV天堂亚洲| 精品一区二区三区四区视频| 久久亚洲免费视频| 欧美激情视频一区二区| 99re国产视频| 天天干91| 国产精品久久在线| 成人精品二区| 亚洲日韩一区二区三区四区| 北条麻妃无码精品AV怎么看| 青青操逼| 一区二区三区欧美| 91久久国产综合久久91| 国产精品久久久久久久久久王安宇 | 国产成人精品在线观看| 一级A片亲子乱| 亚洲天堂免费观看| 亚洲色情在线观看| 人妻久久久| 2018天天干天天操| 日韩色道| 热久久精品| 麻豆视频一区| 丰满人妻无码| 天堂а√在线中文在线新版| 成人精品视频网站| 操操网站| 逼特逼视频在线| 色色A| 久久色资源| 麻豆久久久久| 爱爱成人视频| www四虎com| 日韩中文字幕在线观看视频| 夜色福利在线| 狼人狠狠干| 牛牛影视av| 91人妻无码精品一区二区| 欧美亚洲天堂网| 色色欧美| 俺去夜| 伊人亚洲| 人人摸人人爱| 无码一区二区三区四季| AV无码精品| 成人精品A片免费网站| 午夜福利电影无码| 国产无码内射视频| 嫩草久久| 午夜老司机福利一二三区| 国产成人在线视频免费| 色色五月天网站| 欧美亚洲图区| 日韩无码AV一区二区| 丰满人妻一区二区三区精品高| 国产一级a毛一级a做免费图片| 久久精品9| 第一色影院| 秋霞福利视频| 国产亚洲午夜久久久成人电影| 一级A片视频免费看| 一级a片在线| 欧美日韩在线视频免费播放 | 爱插美女网| 影音先锋av网| 操极品少妇逼| 日韩天堂在线观看| 无码一区二区在线观看| 国产91精品看黄网站在线观看| www.久久99| 国产乱伦网站| 精品看片| 开心五月色婷婷综合开心网| 一区电影网| 日韩人妻av| 免费大黄网站| 久久久婷婷婷| 无码人妻精品一区二区50| 日本黄A级A片国产免费| 加勒比综合无码| 久久久久久久免费无码| 神马午夜福利影院| 三级无码在线| 日韩成人中文字幕| 日韩强操逼网| 国产精品久久久久的角色| 国产乱子伦一区二区三| 亚洲视频91| 成人无码一区二区三区| 久久草在线观看| avcom无码| 人妻懂色av粉嫩av浪潮av| 7x7x7x人成免费观学生视频| 不卡的一区二区| 无码在线电影| 桃色AV| 18+免费网站| 日韩激情一区二区| 亚洲精品国偷拍自产在线观看蜜桃 | 青青草原视频在线免费观看| 午夜性福利视频| 91丨九色丨老农村| 日韩欧美三级| 败火老熟女ThePorn视频| 欧美AⅤ视频| 婷婷天堂网| 亚洲V视频| 成人做爰100片免费-百度| 男人的天堂色琪琪| 人妻无码一区二区三区| 青春草在线视频观看| 亚洲天堂影院| 91视频电影| 男人天堂新地址| 91亚洲国产成人精品一区| 内射视频网站| 午夜精品久久久久久久99热精东| www.91AV| 日本中文字幕在线视频| 亚洲性爱专区| 国产精品V日韩精品V在线观看 | 日韩一级a片| 中文成人在线| 性爱一级片| 欧美日韩成人在线视频| 亚洲免费在线婷婷| 台湾精品一区二区三区| 少妇高潮喷水| 日韩毛片在线| 操久在线| 无码一区二区三区四区五区六区| 亚洲少妇视频| 97免费在线视频| 黄色高清无码视频| 俺去日| 国产成人电影一区二区| 日韩视频网址| 黄网在线看| 夜色精品视频| 黄色操逼| 91成人在线视频| 动漫人物插画动漫人物的视频软件| 日本狠狠操| 中文字幕av在线播放| 色老久久| 好色婷婷| 欧美亚洲成人精品| 性爱小说视频| 欧美精品在线播放| 少妇熟女视频| 欧美性爱一级| 久久久久99精品成人片欧美一区| 久久青草免费视频| 不卡无码在线观看| 日韩高清精品在线| 无码人妻丰满熟妇区蜜桃| 特级黄色毛片| 三级AV在线观看| 亚洲最大的成人网站| 91丨九色丨蝌蚪丨肥女| 久热免费| 日本免费爱爱视频| 国产最新福利| 丁香花小说完整视频免费观看| 九九九九九九国产| 自拍视频网| 久久三级| 国产人妻一区二区精选| 韩国无码免费| 操美女91| 西西人体大胆ww4444多少集| av色站| 亚洲中文字幕在线无码| 操人妻| 亚洲无码一区二区三区蜜桃| 国产色呦呦| 亚洲无码AV麻豆| 欧美午夜伦理| 亚洲秘无码一区二区三区胖子| 日本A片免费| 天堂一区二区三区| 国产三级片91| 亚洲成人在线免费观看| 久久久永久免费视频| 国产精品一区二区不卡| 欧美色伊人| 五月婷婷国产| 国产中文字幕AV在线播放| www.97色| 插丰满少妇在线观看| 亚洲色,天堂网| 国产免费视频69| 久久熟女嫩草成人片免费| 视频一区乳奴| 日本三区视频| 国产精品成人午夜福利| 青娱乐成人在线视频| 伊人9999| 北条麻妃成人视频| 中文字幕第八页| 免费无码婬片aaaa| 日本A片在线观看| 午夜福利电影AV| 天堂一区二区| 三级无码片| av在线资源| 免费无码婬片AAAA片老婦| 麻豆成人片| 日韩VA| 很很撸在线视频| 亚洲综合一区二区| 91嫖妓站街按店老熟女| 日韩无码影院| 美女乱伦视频| 99美女精品视频| 躁BBB躁BBB躁BBBBB乃| 欧美性爱在线网站| 先锋影音AV资源网| 大香蕉综合在线观看| www.日韩| a片视频网站| 国内一级黄片| 免费毛片网址| 无码乱码在线观看| 亚洲欧美大香蕉视频网| 青青草手机在线观看| 成人黄色在线观看视频| 男女啪啪免费网站| 精品黄色视频| 91最新在线播放| 丰满人妻精品一区二区在线 | 亚洲天堂人妻少妇| www.777av| 特级西西人体www高清大胆| 国产色情性黄片Av网站| 国产精品久久久久精| 久久艹综合网| 青娱乐自拍视频| 日本色电影在线观看| 久久久女女女女999久久| 人妻无码一区二区三区摄像头| 超碰牛牛| 91亚洲国产成人| 欧美中文字幕在线视频| 成熟的国模冰莲[2]| 黑人干亚洲人| 17c精品麻豆一区二区免费| 麻豆精品无码| 佐山爱人妻无码蜜桃| 人人干人人摸人人操| 亚洲AV秘成人久久无码海归| 操b视频免费看| 黄色国产在线观看| 婷婷综合亚洲| AV婷婷在线| 91在线精品视频| 第九色| 国产人妻AV| 成人在线91| 亚洲天堂免费| 亚洲精选中文字幕| 乱人伦欲国语对白| 免费爱爱视频| 国产一区二区三区视频在线观看| 亚洲有码在线视频| 啪视频网站国产馆| 欧美级毛片一进一出| 特级艺体西西444WWw| 日本豆花视频| 91精品国产成人www| 插菊花综合网2| 天堂俺去俺来也www久久婷婷| 午夜操逼逼| a级黄色视频免费观看| 中文字幕一区二区三区精华液| 91蝌蚪在线观看| 国产精品久久久久久久久久久久久久久久| 91日综合欧美| 特级444WWW大胆高清| 青青草手机在线观看| 国产无码AV| 五月天在线电影| 美女黄网站| 狠狠撸在线观看| 国产精品秘久久久久久1-~/\v7-/| 扒开让我91看片在线看| 国产三级在线播放| 亚洲精品在线看| 亚洲AV无码精品国产| 青青成人视频| 91国产视频在线播放| 四虎精品| 91av视频在线| 中文字幕亚洲欧美| 亚洲射色| 精品国产999久久久免费| 中文字幕日韩无码电影| 国产av影院| 伊人999| av天堂无码| 亚洲第一中文字幕| 国产思思99re99在线观看| 婷婷久草网| 日本中文字幕在线| 成人做爰A片AAA毛真人| 国产精品1区| 精品人妻二区三区蜜桃| 免费在线观看A| 无码在线视频播放| 五月亚洲六月婷婷| 一级操逼视频| 少妇搡BBBB搡BBB搡澳门| 蜜桃BBwBBWBBwBBw| 黄页免费视频| 人人看人人搂人人摸| 大色AV| 无码不卡在线播放| 97超碰色| 两根茎一起进去好爽A片在线观看| 波多野结衣无码视频| 国产福利91精品一区二区三区| 一级欧美| 大香蕉久热| 久久久黄色视频| 国产精品久久久久久久久久久久久久久| 97干在线| 三级黄,色| 97免费在线视频| 99亚洲无码| AV电影免费看| 成人视频三级| 在线观看无码| 搡BBB,搡BBBB,搡BBBB| 久久这里| 无码精品人妻一区二区三刘亦菲| 淫淫五月天| 欧美三级片在线视频| 国产做爱| 在线观看的av网站| 97无码精品人妻一区二区三区| 精品动漫3D一区二区三区免费版| 另类性爱视频| 少妇人妻av| 91蝌蚪视频在线播放| 地表最强网红八月未央道具大秀| av无码不卡| 男女一区二区三区| 国产思思99re99在线观看| 在线中文AV| av在线小说| 香蕉91| 97免费在线观看视频| 一级黄在线观看| 波多野结衣视频无码| 无码欧精品亚洲日韩一区| 黄91在线观看| 无码专区在线播放| 国产黄片在线播放| 97资源在线视频| 日本无码精品| 国产精品一色哟哟哟| 特黄色视频| 午夜福利视频网站| 日本中文在线观看| 欧美日韩一级电影| 老妇槡BBBB槡BBBB槡| 少妇高潮喷水| 色婷婷在线免费视频| 欧美夜夜操| 午夜成人毛片|