久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

詳解mysql三值邏輯與NULL

瀏覽:13日期:2023-10-02 18:08:31
目錄什么是NULL兩種 NULL為什么必須寫成“IS NULL”,而不是“= NULL”三值邏輯三值邏輯的邏輯值表“IS NULL” 而非 “= NULL”溫柔的陷阱比較謂詞和 NULLNOT IN 和 NOT EXISTS 不是等價的總結什么是NULL

NULL 用于表示缺失的值或遺漏的未知數據,不是某種具體類型的值。數據表中的 NULL 值表示該值所處的字段為空,值為 NULL 的字段沒有值,尤其要明白的是:NULL 值與 0 或者空字符串是不同的。

兩種 NULL

這種說法大家可能會覺得很奇怪,因為 SQL 里只存在一種 NULL 。然而在討論 NULL 時,我們一般都會將它分成兩種類型來思考:“未知”(unknown)和“不適用”(not applicable,inapp licable)。

以“不知道戴墨鏡的人眼睛是什么顏色”這種情況為例,這個人的眼睛肯定是有顏色的,但是如果他不摘掉眼鏡,別人就不知道他的眼睛是什么顏色。這就叫作未知。而“不知道冰箱的眼睛是什么顏色”則屬于“不適用”。因為冰箱根本就沒有眼睛,所以“眼睛的顏色”這一屬性并不適用于冰箱。“冰箱的眼睛的顏色”這種說法和“圓的體積”“男性的分娩次數”一樣,都是沒有意義的。平時,我們習慣了說“不知道”,但是“不知道”也分很多種。“不適用”這種情況下的 NULL ,在語義上更接近于“無意義”,而不是“不確定”。這里總結一下:“未知”指的是“雖然現在不知道,但加上某些條件后就可以知道”;而“不適用”指的是“無論怎么努力都無法知道”。

關系模型的發明者 E.F. Codd 最先給出了這種分類。下圖是他對“丟失的信息”的分類

詳解mysql三值邏輯與NULL

為什么必須寫成“IS NULL”,而不是“= NULL”

我相信不少人有這樣的困惑吧,尤其是相信剛學 SQL 的小伙伴。我們來看個具體的案例,假設我們有如下表以及數據

DROP TABLE IF EXISTS t_sample_null;CREATE TABLE t_sample_null ( id INT(11) unsigned NOT NULL AUTO_INCREMENT COMMENT ’自增主鍵’, name VARCHAR(50) NOT NULL COMMENT ’名稱’, remark VARCHAR(500) COMMENT ’備注’, primary key(id)) COMMENT ’NULL樣例’;INSERT INTO t_sample_null(name, remark)VALUES(’zhangsan’, ’張三’),(’李四’, NULL);

我們要查詢備注為 NULL 的記錄(為 NULL 這種叫法本身是不對的,只是我們日常中已經叫習慣了,具體往下看),怎么查,很多新手會寫出這樣的 SQL

-- SQL 不報錯,但查不出結果SELECT * FROM t_sample_null WHERE remark = NULL;

詳解mysql三值邏輯與NULL

執行時不報錯,但是查不出我們想要的結果, 這是為什么了 ?這個問題我們先放著,我們往下看

三值邏輯

這個三值邏輯不是三目運算,指的是三個邏輯值,有人可能有疑問了,邏輯值不是只有真(true)和假(false)嗎,哪來的第三個?說這話時我們需要注意所處的環境,在主流的編程語言中(C、JAVA、Python、JS等)中,邏輯值確實只有 2 個,但在 SQL 中卻存在第三個邏輯值:unknown。這有點類似于我們平時所說的:對、錯、不知道。

邏輯值 unknown 和作為 NULL 的一種的 UNKNOWN (未知)是不同的東西。前者是明確的布爾型的邏輯值,后者既不是值也不是變量。為了便于區分,前者采用小寫字母 unknown ,后者用大寫字母 UNKNOWN 來表示。為了讓大家理解兩者的不同,我們來看一個 x=x 這樣的簡單等式。x 是邏輯值 unknown 時,x=x 被判斷為 true ,而 x 是 UNKNOWN 時被判斷為 unknown

-- 這個是明確的邏輯值的比較unknown = unknown → true-- 這個相當于NULL = NULLUNKNOWN = UNKNOWN → unknown三值邏輯的邏輯值表

NOT

詳解mysql三值邏輯與NULL

AND

詳解mysql三值邏輯與NULL

OR

詳解mysql三值邏輯與NULL

圖中藍色部分是三值邏輯中獨有的運算,這在二值邏輯中是沒有的。其余的 SQL 謂詞全部都能由這三個邏輯運算組合而來。從這個意義上講,這個幾個邏輯表可以說是 SQL 的母體(matrix)。

NOT 的話,因為邏輯值表比較簡單,所以很好記;但是對于 AND 和 OR,因為組合出來的邏輯值較多,所以全部記住非常困難。為了便于記憶,請注意這三個邏輯值之間有下面這樣的優先級順序。

AND 的情況:false > unknown > true

OR 的情況:true > unknown > false

優先級高的邏輯值會決定計算結果。例如 true AND unknown ,因為 unknown 的優先級更高,所以結果是 unknown 。而 true OR unknown 的話,因為 true 優先級更高,所以結果是 true 。記住這個順序后就能更方便地進行三值邏輯運算了。特別需要記住的是,當 AND 運算中包含 unknown 時,結果肯定不會是 true (反之,如果AND 運算結果為 true ,則參與運算的雙方必須都為 true )。

-- 假設 a = 2, b = 5, c = NULL,下列表達式的邏輯值如下a < b AND b > c → unknowna > b OR b < c → unknowna < b OR b < c → trueNOT (b <> c) → unknown“IS NULL” 而非 “= NULL”

我們再回到問題:為什么必須寫成“IS NULL”,而不是“= NULL”

對 NULL 使用比較謂詞后得到的結果總是 unknown 。而查詢結果只會包含 WHERE 子句里的判斷結果為 true 的行,不會包含判斷結果為 false 和 unknown 的行。不只是等號,對 NULL 使用其他比較謂詞,結果也都是一樣的。所以無論 remark 是不是 NULL ,比較結果都是 unknown ,那么永遠沒有結果返回。以下的式子都會被判為 unknown

-- 以下的式子都會被判為 unknown= NULL> NULL< NULL<> NULLNULL = NULL

那么,為什么對 NULL 使用比較謂詞后得到的結果永遠不可能為真呢?這是因為,NULL 既不是值也不是變量。NULL 只是一個表示“沒有值”的標記,而比較謂詞只適用于值。因此,對并非值的 NULL 使用比較謂詞本來就是沒有意義的。“列的值為 NULL ”、“NULL 值” 這樣的說法本身就是錯誤的。因為 NULL不是值,所以不在定義域(domain)中。相反,如果有人認為 NULL 是值,那么我們可以倒過來想一下:它是什么類型的值?關系數據庫中存在的值必然屬于某種類型,比如字符型或數值型等。所以,假如 NULL 是值,那么它就必須屬于某種類型。

NULL 容易被認為是值的原因有兩個。第一個是高級編程語言里面,NULL 被定義為了一個常量(很多語言將其定義為了整數0),這導致了我們的混淆。但是,SQL 里的 NULL 和其他編程語言里的 NULL 是完全不同的東西。第二個原因是,IS NULL 這樣的謂詞是由兩個單詞構成的,所以我們容易把 IS 當作謂詞,而把 NULL 當作值。特別是 SQL 里還有 IS TRUE 、IS FALSE 這樣的謂詞,我們由此類推,從而這樣認為也不是沒有道理。但是正如講解標準 SQL 的書里提醒人們注意的那樣,我們應該把 IS NULL 看作是一個謂詞。因此,寫成 IS_NULL 這樣也許更合適。

溫柔的陷阱比較謂詞和 NULL

排中律不成立排中律指同一個思維過程中,兩個相互矛盾的思想不能同假,必有一真,即“要么A要么非A”

假設我們有學生表:t_student

DROP TABLE IF EXISTS t_student;CREATE TABLE t_student ( id INT(11) unsigned NOT NULL AUTO_INCREMENT COMMENT ’自增主鍵’, name VARCHAR(50) NOT NULL COMMENT ’名稱’, age INT(3) COMMENT ’年齡’, remark VARCHAR(500) NOT NULL DEFAULT ’’ COMMENT ’備注’, primary key(id)) COMMENT ’學生信息’;INSERT INTO t_student(name, age)VALUE(’zhangsan’, 25),(’wangwu’, 60),(’bruce’, 32),(’yzb’, NULL),(’boss’, 18);SELECT * FROM t_student;

表中數據 yzb 的 age 是 NULL,也就是說 yzb 的年齡未知。在現實世界里,yzb 是 20 歲,或者不是 20 歲,二者必居其一,這毫無疑問是一個真命題。那么在 SQL 的世界里了,排中律還適用嗎? 我們來看一個 SQL

SELECT * FROM t_studentWHERE age = 20 OR age <> 20;

咋一看,這不就是查詢表中全部記錄嗎?我們來看下實際結果

詳解mysql三值邏輯與NULL

yzb 沒查出來,這是為什么了?我們來分析下,yzb 的 age 是 NULL,那么這條記錄的判斷步驟如下

-- 1. 約翰年齡是 NULL (未知的 NULL !)SELECT *FROM t_studentWHERE age = NULLOR age <> NULL;-- 2. 對 NULL 使用比較謂詞后,結果為unknownSELECT *FROM t_studentWHERE unknownOR unknown;-- 3.unknown OR unknown 的結果是unknown (參考三值邏輯的邏輯值表)SELECT *FROM t_studentWHERE unknown;

SQL 語句的查詢結果里只有判斷結果為 true 的行。要想讓 yzb 出現在結果里,需要添加下面這樣的 “第 3 個條件”

-- 添加 3 個條件:年齡是20 歲,或者不是20 歲,或者年齡未知SELECT * FROM t_studentWHERE age = 20 OR age <> 20 OR age IS NULL;

CASE 表達式和 NULL

簡單 CASE 表達式如下

CASE col_1 WHEN = 1 THEN ’o’ WHEN NULL THEN ’x’END

這個 CASE 表達式一定不會返回 ×。這是因為,第二個 WHEN 子句是 col_1 = NULL 的縮寫形式。正如我們所知,這個式子的邏輯值永遠是 unknown ,而且 CASE 表達式的判斷方法與 WHERE 子句一樣,只認可邏輯值為 true 的條件。正確的寫法是像下面這樣使用搜索 CASE 表達式

CASE WHEN col_1 = 1 THEN ’o’ WHEN col_1 IS NULL THEN ’x’ENDNOT IN 和 NOT EXISTS 不是等價的

我們在對 SQL 語句進行性能優化時,經常用到的一個技巧是將 IN 改寫成 EXISTS ,這是等價改寫,并沒有什么問題。但是,將 NOT IN 改寫成 NOT EXISTS 時,結果未必一樣。

我們來看個例子,我們有如下兩張表:t_student_A 和 t_student_B,分別表示 A 班學生與 B 班學生

DROP TABLE IF EXISTS t_student_A;CREATE TABLE t_student_A ( id INT(11) unsigned NOT NULL AUTO_INCREMENT COMMENT ’自增主鍵’, name VARCHAR(50) NOT NULL COMMENT ’名稱’, age INT(3) COMMENT ’年齡’, city VARCHAR(50) NOT NULL COMMENT ’城市’, remark VARCHAR(500) NOT NULL DEFAULT ’’ COMMENT ’備注’, primary key(id)) COMMENT ’學生信息’;INSERT INTO t_student_A(name, age, city)VALUE(’zhangsan’, 25,’深圳市’),(’wangwu’, 60, ’廣州市’),(’bruce’, 32, ’北京市’),(’yzb’, NULL, ’深圳市’),(’boss’, 43, ’深圳市’);DROP TABLE IF EXISTS t_student_B;CREATE TABLE t_student_B ( id INT(11) unsigned NOT NULL AUTO_INCREMENT COMMENT ’自增主鍵’, name VARCHAR(50) NOT NULL COMMENT ’名稱’, age INT(3) COMMENT ’年齡’, city VARCHAR(50) NOT NULL COMMENT ’城市’, remark VARCHAR(500) NOT NULL DEFAULT ’’ COMMENT ’備注’, primary key(id)) COMMENT ’學生信息’;INSERT INTO t_student_B(name, age, city)VALUE(’馬化騰’, 45, ’深圳市’),(’馬三’, 25, ’深圳市’),(’馬云’, 43, ’杭州市’),(’李彥宏’, 41, ’深圳市’),(’年輕人’, 25, ’深圳市’); * FROM t_student_B;

需求:查詢與 A 班住在深圳的學生年齡不同的 B 班學生,也就說查詢出 :馬化騰 和 李彥宏,這個 SQL 該如何寫,像這樣?

-- 查詢與 A 班住在深圳的學生年齡不同的 B 班學生 ?SELECT * FROM t_student_BWHERE age NOT IN ( SELECT age FROM t_student_A WHERE city = ’深圳市’);

我們來看下執行結果

詳解mysql三值邏輯與NULL

我們發現結果是空,查詢不到任何數據,這是為什么了 ?這里 NULL 又開始作怪了,我們一步一步來看看究竟發生了什么

-- 1. 執行子查詢,獲取年齡列表SELECT * FROM t_studentWHERE age NOT IN(43, NULL, 25);-- 2. 用NOT 和IN 等價改寫NOT INSELECT * FROM t_studentWHERE NOT age IN (43, NULL, 25);-- 3. 用OR 等價改寫謂詞INSELECT * FROM t_studentWHERE NOT ( (age = 43) OR (age = NULL) OR (age = 25) );-- 4. 使用德· 摩根定律等價改寫SELECT * FROM t_studentWHERE NOT (age = 43) AND NOT(age = NULL) AND NOT (age = 25);-- 5. 用<> 等價改寫 NOT 和 =SELECT * FROM t_studentWHERE (age <> 43) AND (age <> NULL) AND (age <> 25);-- 6. 對NULL 使用<> 后,結果為 unknownSELECT * FROM t_studentWHERE (age <> 43) AND unknown AND (age <> 25);-- 7.如果 AND 運算里包含 unknown,則結果不為true(參考三值邏輯的邏輯值表)SELECT * FROM t_studentWHERE false 或 unknown;

可以看出,在進行了一系列的轉換后,沒有一條記錄在 WHERE 子句里被判斷為 true 。也就是說,如果 NOT IN 子查詢中用到的表里被選擇的列中存在 NULL ,則 SQL 語句整體的查詢結果永遠是空。這是很可怕的現象!

為了得到正確的結果,我們需要使用 EXISTS 謂詞

-- 正確的SQL 語句:馬化騰和李彥宏將被查詢到SELECT * FROM t_student_B BWHERE NOT EXISTS ( SELECT * FROM t_student_A A WHERE B.age = A.age AND A.city = ’深圳市’ );

執行結果如下

詳解mysql三值邏輯與NULL

同樣地,我們再來一步一步地看看這段 SQL 是如何處理年齡為 NULL 的行的

-- 1. 在子查詢里和 NULL 進行比較運算,此時 A.age 是 NULLSELECT * FROM t_student_B BWHERE NOT EXISTS ( SELECT * FROM t_student_A A WHERE B.age = NULL AND A.city = ’深圳市’ );-- 2. 對NULL 使用“=”后,結果為 unknownSELECT * FROM t_student_B BWHERE NOT EXISTS ( SELECT * FROM t_student_A A WHERE unknown AND A.city = ’深圳市’ );-- 3. 如果AND 運算里包含 unknown,結果不會是trueSELECT * FROM t_student_B BWHERE NOT EXISTS ( SELECT * FROM t_student_A A WHERE false 或 unknown);-- 4. 子查詢沒有返回結果,因此相反地,NOT EXISTS 為 trueSELECT * FROM t_student_B BWHERE true;

也就是說,yzb 被作為 “與任何人的年齡都不同的人” 來處理了。EXISTS 只會返回 true 或者false,永遠不會返回 unknown。因此就有了 IN 和 EXISTS 可以互相替換使用,而 NOT IN和 NOT EXISTS 卻不可以互相替換的混亂現象。

還有一些其他的陷阱,比如:限定謂詞和 NULL、限定謂詞和極值函數不是等價的、聚合函數和 NULL 等等。

總結

1、NULL 用于表示缺失的值或遺漏的未知數據,不是某種具體類型的值,不能對其使用謂

2、對 NULL 使用謂詞后的結果是 unknown,unknown 參與到邏輯運算時,SQL 的運行會和預想的不一樣3、 IS NULL 整個是一個謂詞,而不是:IS 是謂詞,NULL 是值;類似的還有 IS TRUE、IS FALSE4、要想解決 NULL 帶來的各種問題,最佳方法應該是往表里添加 NOT NULL 約束來盡力排除 NULL

以上就是詳解mysql三值邏輯與NULL的詳細內容,更多關于mysql三值邏輯與NULL的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 国产依人| 欧洲一区二区三区 | 国产精品免费看 | 成人av网站在线 | 精品国产91亚洲一区二区三区www | 日韩福利影院 | 亚洲国产精品99久久久久久久久 | 国产日韩在线播放 | 91免费视频 | 精品亚洲一区二区三区 | 99久久精品免费看国产免费粉嫩 | 欧美国产综合一区 | 国产综合精品一区二区三区 | 大香一网 | 亚洲综合大片69999 | 国外爱爱视频 | 91精品国产91久久久久久吃药 | 一区二区三区欧美在线 | 午夜精品久久久久久久久 | 中文字幕在线资源 | 亚洲午夜精品视频 | 国产精品乱码一区二区三区 | 欧美日韩在线一区 | 最新中文字幕久久 | 亚洲视频免费观看 | 国产精品久久久久久久一区探花 | 国产综合视频在线观看 | 欧美色性 | 国外爱爱视频 | 色九九 | 特黄一级| 久久精品综合 | 中文在线一区 | 91中文在线观看 | 操人网| 欧美一级做a爰片免费视频 亚洲精品一区在线观看 | 精品伦理一区二区三区 | 久久激情视频 | 欧美一区二区三区在线看 | 最近免费中文字幕在线视频2 | 亚洲一区中文字幕 | k8久久久一区二区三区 | 午夜影院a| 暖暖成人免费视频 | 国产高清自拍 | a中文在线视频 | 日韩精品专区 | 日韩欧美在线观看视频网站 | 久久成人一区二区 | 免费v片| 粉嫩高清一区二区三区 | 一区二区三区观看视频 | 中文字幕在线视频精品 | 亚洲精品第一页 | 欧美成人一区二区三区片免费 | 日韩一区在线视频 | 激情的网站 | 久久99亚洲精品 | 久久国产一区二区三区 | 久久久久中文 | 51ⅴ精品国产91久久久久久 | 中文字幕日韩久久 | 精品国产乱码久久久久久1区2区 | 国产视频2021 | 亚洲综合色视频在线观看 | 免费在线看a | 国产亚洲一区二区三区在线 | 99视频在线免费观看 | 国产精品第一区第27页 | 亚洲一区二区三区久久久 | 国产欧美精品一区二区三区 | 丁香久久| 成人在线视频网 | 黄色国产 | 蜜月久综合久久综合国产 | 日韩视频在线免费观看 | 国产在线精品二区 | 国产精品成人3p一区二区三区 | 精品日韩一区二区三区 | 久久久精品网 | 国产一区二区免费 | 久久久精品一区 | 亚洲一区av | 久久人人爽人人爽 | 91在线视频播放 | 亚洲女人天堂成人av在线 | 欧美欧美欧美 | 国产在线在线 | 国产一区二区三区在线免费观看 | 亚洲综合视频在线 | 国产一区久久 | 99国产精品久久久久久久成人热 | 91免费在线播放 | 成人做爰www免费看视频网站 | 一区二区三区日韩 | 九色91在线 | 永久91嫩草亚洲精品人人 | 欧美一区二区三区精品免费 | 国产午夜精品一区二区三区 | 嫩草精品 | 91精品国产综合久久久蜜臀图片 | 亚洲成人日本 | 青青草综合在线 | 国产综合精品一区二区三区 | 欧美国产在线观看 | 精品午夜久久 | 亚洲福利免费 | 中文视频在线 | 99久久精品一区二区 | 欧美三级在线视频 | 日韩欧美一二三区 | 在线成人av | 丁香五月网久久综合 | 中文字幕第一页在线 | 日日摸夜夜添夜夜添高潮视频 | 国产视频精品在线 | 欧美中文字幕在线观看 | 午夜激情免费在线观看 | 2018天天操夜夜操 | 亚洲欧美久久久 | www.久久久.com | 亚洲日本乱码一区两区在线观看 | 亚洲精品字幕 | 精品无码三级在线观看视频 | 超碰在线一区二区三区 | 国产福利网站 | 欧美在线视频一区 | 天天爽天天干 | 中文字幕欧美在线观看 | 成人免费网站视频 | 亚洲最大的黄色网 | 久久骚| 日韩精品一区二区三区在线播放 | 亚洲女人天堂网 | 亚洲成人高清 | 日日干日日操 | 国产精品久久久久久久久久免费看 | 久久男人的天堂 | 天堂综合网久久 | 国产在线一区二区 | 欧美一区永久视频免费观看 | 91人人网| 国产传媒视频 | 成人小视频在线看 | 亚洲成人av | 永久av| 国产91富婆养生按摩会所 | 国产乱人伦av在线a jizz久久久 www.亚洲 | 国产成人精品免费视频 | 麻豆国产露脸在线观看 | 伊人久久一区二区三区 | 五月婷婷丁香在线 | 国产日韩精品在线 | 亚洲欧美一区二区精品中文字幕 | 久久久久久久久久久精 | 视频1区2区| 在线亚洲欧美 | 久久小视频 | 免费黄在线观看 | the蜜臀av入口| 99国产精品一区 | 精品在线播放 | 91在线精品秘密一区二区 | 久久毛片| 国产精品一二区 | 亚洲欧美在线观看 | 久久精品免费 | 欧美精品在线看 | 91资源在线观看 | 亚洲国产精品成人无久久精品 | 久久精品视频在线播放 | 亚洲欧洲一区二区三区 | 91亚洲免费 | 亚洲免费在线观看 | 精品亚洲永久免费精品 | 国产精品久久久久久久久久免费看 | 精品国产一区二区三区成人影院 | 香蕉av在线| 欧美天天 | 亚洲欧美在线观看 | 久久精品国产免费 | 国产精品日韩三级 | 中文字幕亚洲综合久久久软件 | 色播99 | av一区二区在线观看 | 日本久久久久久久久久久久 | 国产高清在线 | 久久久久久一区 | 97在线观看 | 国产精品久久久久久久久免费高清 | 欧美日韩精品一区二区三区 | 国产成人精品网站 | 亚洲久草 | 日批的视频| 亚洲一区二区在线免费观看 | 91免费看片网站 | 国产精品久久国产愉拍 | 日本免费三片免费观看 | 成人精品久久久 | 免费成人小视频 | 99精品全国免费观看视频软件 | 国产婷婷精品av在线 | 欧美久久视频 | 成人蜜桃视频 | 99精品热视频 | 国产亚洲精品v | 一区二区中文字幕 | 精品网站999www| 久久久久久国产精品美女 | 国产精品日本欧美一区二区三区 | 精品久久久久久久久久久久 | 91精品久久久久久久久久入口 | 视色网站| 精品二区| 北条麻妃一区二区三区在线观看 | 羞羞视频在线播放 | 国产v日产∨综合v精品视频 | 国偷自产一区二区免费视频 | 午夜国产精品视频 | 欧美激情一区二区三级高清视频 | av电影手机在线看 | 欧美性大战久久久久久久蜜臀 | 91观看| 欧美激情首页 | 精品久久久久久久久久久久 | 久久爱综合 | 国产激情网 | 国产精品99 | 午夜视频大全 | 91亚洲福利| 欧美日韩一区二区中文字幕 | 日韩精品免费在线视频 | 三区影院 | 欧美日韩国产在线播放 | av影片在线 | 欧美一级欧美三级在线观看 | 国产精品毛片 | 久在草视频 | 国产九九在线观看 | 欧美日韩第一页 | 中文在线a在线 | 久久欧美视频 | 国产精品一区二区三区免费 | 91免费看片| 日韩视频中文字幕在线观看 | 国产猛男猛女超爽免费视频网站 | 国产超碰人人爽人人做人人爱 | 美女视频一区二区三区 | 免费的日批视频 | 精品国产髙清在线看国产毛片 | 国产精品自拍视频网站 | 国产精品久久国产精品 | 亚洲九九九 | 国产精品毛片一区二区在线看 | 成人激情免费视频 | 国产一区二区精品在线观看 | 日韩三级电影免费观看 | 国产综合一区二区 | 成人性生交大片免费看中文带字幕 | 亚洲国产视频一区 | 国产1页| 免费看的毛片 | 婷婷色综合 | 国产精品地址 | 亚洲国产精品一区二区三区 | 91资源在线 | 午夜影院普通用户体验区 | avmans最新导航地址 | 99久久久久国产精品免费 | 草久网 | 日本成人在线视频网站 | 亚洲精选久久 | 久久国产日韩 | 久久首页 | 在线看成人片 | 99re在线观看 | 一区电影 | 久久婷婷视频 | 亚洲综合在线视频 | 欧美成人猛片aaaaaaa | 亚洲精品视频免费看 | 久久久久久国产精品 | 九色porny国模私拍av | 国产成人精品午夜视频免费 | 国产伊人一区 | 91国偷自产一区二区三区亲奶 | 国产精品69久久久久水密桃 | 久久涩| 欧美视频二区 | 欧美极品视频 | 在线播放国产一区二区三区 | 黄色二区| 亚洲成人一区二区三区 | а天堂中文最新一区二区三区 | 亚洲另类视频 | 亚洲精品久久久久国产 | 久久va| 一区视频在线 | 色婷婷一二三 | 色欧美片视频在线观看 | 国产精品国色综合久久 | 中文字幕爱爱视频 | 刺激网| 青娱乐99| 亚洲免费一区 | 国产一区二区三区不卡在线观看 | 国内精品视频在线观看 | 精品中文字幕在线观看 | 欧美日韩精品久久久 | 刘亦菲的毛片 | 久久久久久国产一级毛片高清版 | 免费观看一区二区三区 | www.日韩视频 | 日韩欧美一区二区三区免费观看 | 91国产精品入口 | 一区二区观看 | 久久一区二区三区四区 | 久草视频在线资源站 | 国产不卡免费视频 | 国产精品一区一区 | 日韩在线播放一区二区三区 | 91超碰caoporn97人人 | 国产一区久久 | 爱色av | 二区久久 | 亚洲日本中文 | 日韩在线视频中文字幕 | 国产高清在线a视频大全 | 99这里只有精品视频 | 黄色91| 日韩视频一区二区 | 91免费视频 | 国产伦精品一区二区三区在线 | 欧美午夜三级视频 | 国产精品色一区二区三区 | 欧美成人高清 | 日韩毛片 | av免费在线播放 | 玖玖综合网 | 伊人网网站 | 国产96精品久久久 | 久在线视频| 欧美日韩在线播放 | 一级篇| 亚洲人在线播放 | 成人免费黄色毛片 | 成人一区二区三区 | 精品成人在线 | 亚色在线| 中文字幕日韩欧美 | 免费亚洲网站 | 欧美日韩一区二区三区四区 | 国产精品99久久久久久宅男 | 99精品在线观看 | 在线亚洲一区 | 青青久视频 | 精品国产一区二区三区久久久 | 久久国| 日本在线观看网站 | 91久久精品国产 | 国产精品亲子伦av一区二区三区 | 久在线视频播放免费视频 | 精品成人在线 | 狠狠干美女 | 成人免费视频观看视频 | 插插射啊爱视频日a级 | 91久久精品国产91久久性色tv | 精品久久久网站 | 91在线精品一区二区三区 | 在线免费国产视频 | 影音先锋中文字幕在线 | 成人一区视频 | 欧美另类亚洲 | porn在线| 久久精品美女 | 亚洲视频中文 | 国产精品一区二区在线观看 | 龙珠z在线观看 | 亚洲美女av在线 | 午夜视频在线观看网站 | 久久久精彩视频 | 一区二区三区国产 | 国产成人61精品免费看片 | 北条麻妃一区二区三区在线 | 久久久精品国产 | 中文字幕免费在线 | 武道仙尊动漫在线观看 | 午夜影视 | 国产乱视频网站 | 可以在线观看的黄色 | 国产精品日韩欧美一区二区三区 | 欧美日韩一区二区在线播放 | 黄色免费视频 | 操操操操网 | 国产精品久久久爽爽爽麻豆色哟哟 | 欧美精品在线看 | 欧美高清一区 | 日韩精品一区二区三区视频播放 | 狠狠综合久久av一区二区老牛 | 香蕉久久一区二区不卡无毒影院 | 久草视频在线播放 | 国产精品久久久久久久久久99 | 日本一区二区三区中文字幕 | 一色屋精品久久久久久久久久 | 美女二区 | 日韩1区| 成人男女激情免费视频 | 久久涩 | 色综合一区 | 欧洲成人一区 | 国产成人高清在线 | 毛片一区二区 | 成人免费网站www网站高清 | 久久成人免费视频 | 99在线观看 | 日韩在线不卡一区 | 色欧美片视频在线观看 | 一本岛在线视频 | 中文亚洲 | 日韩成人在线视频 | 男人久久天堂 | 国产精品久久久久久久久久久小说 | a性片| 欧美一级特黄aaaaaaa色戒 | 久草网在线视频 | 欧美日韩在线免费观看 | 亚洲精品乱码久久久久久久久 | 九九热这里只有 | 免费在线成人网 | 99国产精品久久久 | 日韩天堂 | 欧美精产国品一二三区 | 久久免费在线观看 | 日韩免费视频一区二区 | 久久午夜精品 | 久久精品99| 国产欧美日本 | 国产精品一区二区在线 | 亚洲性片| 国产福利91精品一区二区 | 人一级毛片 | 中文字幕在线免费播放 | 亚洲欧美精品一区二区三区 | 久久草在线视频 | 精品久久久久久久久福利 | 永久精品 | 精品成人一区 | 女人久久久久久久 | 在线观看免费av网站 | 99精品99| 国产精品99久久久久久动医院 | 亚洲二区在线播放 | 欧美一区二区三区免费观看视频 | 在线久草| 老司机精品福利视频 | 激情一区 | 天天舔天天干天天操 | 免费三级电影网站 | 久久99精品国产自在现线 | 麻豆av一区| av网站免费 | 国产精品成人一区二区三区夜夜夜 | 欧美日韩视频在线观看免费 | 大香伊蕉在人线视频777 | 久久爱电影 | 欧美视频精品 | 二区视频| a级在线观看 | 在线观看国产视频 | 7799精品视频天天看 | 久久久极品 | 欧美大片一区二区 | 成人在线视频网站 | 精品国产三级 | 天天澡天天狠天天天做 | 欧美一区二区在线视频 | 国产精品一区二区久久 | 亚洲成人综合在线 | 中文字幕日韩在线 | 国产美女自拍视频 | 欧美日韩精品在线观看 | 天天爱天天操 | 久久精品久久久久久 | 国产精久| 国产精品久久久久久福利一牛影视 | 国产美女av | 天堂中文网官网 | 亚洲伊人久久综合 | 日本不卡免费新一二三区 | 亚洲乱码国产乱码精品精98午夜 | 久久久精品一区二区 | 91天堂| 日韩中文字幕电影 | 久久久久久国产精品 | 日本网站在线免费观看 | 青青草一区二区三区 | 亚洲精品四区 | 午夜tv | 91精品国产欧美一区二区成人 | 毛片在线免费 | 久久久久亚洲视频 | www久久精品 | 91精品国产91久久久久游泳池 | 黄色毛片一级 | 久久99精品久久久久久按摩秒播 | www天天干| 成人精品视频免费在线观看 | 日本一区二区三区四区视频 | 免费av一区二区三区 | 淫片一级国产 | 在线欧美亚洲 | 欧美日韩国产一区二区三区不卡 | 国产一级片 | 天天看天天操 | 久久久999精品视频 欧美老妇交乱视频 | 国产浪潮av色综合久久超碰 | 一级在线观看 | 久久久久久av | 人人玩人人干 | 91精品国产综合久久久久久蜜月 | 久久亚洲视频 | 亚洲www啪成人一区二区 | 久久二区三区 | 久久99国产精品久久99果冻传媒 | 91影院 | 国产精品美女久久久久久久网站 | 美国黄色毛片 | 精品无人乱码一区二区三区 | 亚洲成年人网站在线观看 | 午夜一区二区三区 | 亚洲处破女 | 岛国av在线| 亚洲欧美一区二区三区在线 | 久久久久综合狠狠综合日本高清 | 午夜精品一区二区三区在线 | 欧美激情精品久久久久久变态 | 精品免费国产一区二区三区 | 国产精品亚洲成在人线 | 午夜一级黄色片 | 黑人巨大精品欧美一区二区免费 | 午夜影院在线观看免费 | 亚洲黄色免费观看 | 成人免费在线播放 | 久久久精品国产 | 嫩草私人影院 | 久久国产精品视频 | 精品久久久久久 | 一区欧美| 国产偷录视频叫床高潮对白 | 国产精品成人久久久久 | 国产成人精品久久二区二区91 | a免费在线 | 自拍偷拍亚洲欧洲 | 久久一区二区三区四区 | 免费二区 | 久久精品网| 91色在线 | 精品国产精品国产偷麻豆 | 欧美人人 | 国产精品一二三区视频 | 一级全黄少妇性色生活片免费 | 九九精品久久久 | 国产综合精品一区二区三区 | 亚洲国产精品一区二区久久 | 亚洲毛片网站 | 久热精品视频 | 日韩免费视频中文字幕 | 女人久久久 | 亚洲 成人 av | 国产91在线播放精品 | 在线免费观看激情视频 | 国产成人高清视频 | 久久精品国产一区二区三 | 一区二区日本 | 国产二区三区 | 国产99久久精品一区二区永久免费 | 成人av一区二区三区 | 久久久久网站 | 精品久久久久久国产 | 亚洲国产精品久久 | 日韩精品毛片 | 一区二区三区四区视频 | 国产v日产∨综合v精品视频 | 国产在线综合网 | 99视频精品 | 粉嫩高清一区二区三区 | 久久精品不卡 | 欧美一区二区三区免费观看视频 | 久久久美女 | 日本三级不卡 | 大黄网站在线观看 | 91在线成人| 亚洲一区二区三区日韩 | 欧美国产日韩一区 | 夜夜操天天干 | 成人高清视频在线观看 | 欧美最猛性xxxxx亚洲精品 | 伊人网伊人 | 欧美日韩电影一区二区三区 | 国产区最新 | va在线| 中文字幕在线免费 | 日本人做爰大片免费观看一老师 | 欧美男人的天堂 | 一区二区三区四区免费 | 日韩视频国产 | 日本另类αv欧美另类aⅴ | 午夜在线观看视频 | 北条麻妃一区二区三区在线观看 | 午夜影院在线观看视频 | 日韩精品一区二区三区 | 一级欧美片 | 亚洲一区二区在线 | 欧美久久久久久久久久久久 | 日韩在线资源 |