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

《SQL必知必會(huì)》讀書筆記

共 11387字,需瀏覽 23分鐘

 ·

2021-05-10 14:05

點(diǎn)擊關(guān)注上方“SQL數(shù)據(jù)庫開發(fā)”,

設(shè)為“置頂或星標(biāo)”,第一時(shí)間送達(dá)干貨

SQL專欄

SQL基礎(chǔ)知識(shí)第二版
SQL高級(jí)知識(shí)第二版


本篇文章是 《SQL 必知必會(huì)》 的讀書筆記,SQL必知必會(huì)的英文名叫做 Sams Teach Yourself in 10 Minutes。但是,我肯定是不能夠在10分鐘就能學(xué)會(huì)本書所有涉及到的sql,所以就起個(gè)名字叫30分鐘學(xué)會(huì)SQL語句。

目前手邊的數(shù)據(jù)庫是 mysql,所以以下示例均是由 mysql 演示。由于現(xiàn)在大部分工具都支持語法高亮,所以以下關(guān)鍵字都使用小寫。


準(zhǔn)備

工具

mycli,一個(gè)使用python編寫的終端工具,支持語法高亮,自動(dòng)補(bǔ)全,多行模式,并且如果你熟悉vi的話,可以使用vi-mode快速移動(dòng),編輯??傊?,vi + mycli 簡(jiǎn)直是神器!

同樣, postgreSQL 可以使用pgcli。

  1. pip install -U mycli    # 默認(rèn)你已經(jīng)安裝了pip


樣例表

示例中有兩個(gè)表,分為 student 學(xué)生表與 class 班級(jí)表。student 表中有 class_id 關(guān)聯(lián) class 表。以下是兩個(gè)表數(shù)據(jù)的 sql。另外,最后有三道小練習(xí)題會(huì)用到樣例表。


create table class
( id int(11) not null auto_increment,
  name varchar(50) not null,
  primary key (id)
);

create table student
( id int(11) not null auto_increment,
  name varchar(50) not null,
  age smallint default 20,
  sex enum('male', 'famale'),
  score tinyint comment '入學(xué)成績(jī)',
  class_id int(11),
  createTime timestamp default current_timestamp,
  primary key (id),
  foreign key (class_id) references class (id)
);


insert into class (name)
values ('軟件工程'), ('市場(chǎng)營(yíng)銷');

insert into student (name, age, sex, score, class_id)
values ('張三', 21, 'male', 100, 1);

insert into student (name, age, sex, score, class_id)
values ('李四', 22, 'male', 98, 1);

insert into student (name, age, sex, score, class_id)
values ('王五', 22, 'male', 99, 1);

insert into student (name, age, sex, score, class_id)
values ('燕七', 21, 'famale', 34, 2);

insert into student (name, age, sex, score, class_id)
values ('林仙兒', 23, 'famale', 78, 2);

(提示:可以左右滑動(dòng)代碼)


SQL 基礎(chǔ)

術(shù)語
Database
數(shù)據(jù)庫值一系列有關(guān)聯(lián)數(shù)據(jù)的集合,而操作和管理這些數(shù)據(jù)的是DBMS,包括MySQL,PostgreSQL,MongoDB,Oracle,SQLite等等。RDBMS 是基于關(guān)系模型的數(shù)據(jù)庫,使用 SQL 管理和操縱數(shù)據(jù)。另外也有一些 NoSQL 數(shù)據(jù)庫,比如 MongoDB。因?yàn)?/span>NoSQL為非關(guān)系型數(shù)據(jù)庫,一般不支持join操作,因此會(huì)有一些非正則化(denormalization)的數(shù)據(jù),查詢也比較快。

Table
具有特定屬性的結(jié)構(gòu)化文件。比如學(xué)生表,學(xué)生屬性有學(xué)號(hào),年齡,性別等。schema (模式) 用來描述這些信息。 NoSQL 不需要固定列,一般沒有 schema,同時(shí)也利于垂直擴(kuò)展。

Column
表中的特定屬性,如學(xué)生的學(xué)號(hào),年齡。每一列都具有數(shù)據(jù)類型。

Data Type
每一列都具有數(shù)據(jù)類型,如 char, varchar,int,text,blob, datetime,timestamp。根據(jù)數(shù)據(jù)的粒度為列選擇合適的數(shù)據(jù)類型,避免無意義的空間浪費(fèi)。如下有一些類型對(duì)比
  • char, varchar 需要存儲(chǔ)數(shù)據(jù)的長(zhǎng)度方差小的時(shí)候適合存儲(chǔ)char,否則varchar。 varchar 會(huì)使用額外長(zhǎng)度存儲(chǔ)字符串長(zhǎng)度,占用存儲(chǔ)空間較大。兩者對(duì)字符串末尾的空格處理的策略不同,不同的DBMS又有不同的策略,設(shè)計(jì)數(shù)據(jù)庫的時(shí)候應(yīng)當(dāng)注意到這個(gè)區(qū)別。
  • datetime, timestamp datetime 存儲(chǔ)時(shí)間范圍從1001年到9999年。 timestamp 保存了自1970年1月1日的秒數(shù),因?yàn)榇鎯?chǔ)范圍比較小,自然存儲(chǔ)空間占用也比較小。日期類型可以設(shè)置更新行時(shí)自動(dòng)更新日期,建議日期時(shí)間類型根據(jù)精度存儲(chǔ)為這兩個(gè)類型。如今 DBMS 能夠存儲(chǔ)微秒級(jí)別的精度,比如 mysql 默認(rèn)存儲(chǔ)精度為秒,但可以指定到微秒級(jí)別,即小數(shù)點(diǎn)后六位小數(shù)
  • enum 對(duì)于一些固定,不易變動(dòng)的狀態(tài)碼建議存儲(chǔ)為 enum 類型,具有更好的可讀性,更小的存儲(chǔ)空間,并且可以保證數(shù)據(jù)有效性。

小問題:如何存儲(chǔ)IP地址?

Row

數(shù)據(jù)表的每一行記錄。如學(xué)生張三。


檢索數(shù)據(jù)
# 檢索單列
select name from student;

# 檢索多列
select name, age, class from student;

# 檢索所有列
select * from student;

# 對(duì)某列去重
select distinct class from student;

# 檢索列-選擇區(qū)間
# offset 基數(shù)為0,所以 `offset 1` 代表從第2行開始
select * from student limit 1, 10;
select * from student limit 10 offset 1;


排序

默認(rèn)排序是 ASC,所以一般升序的時(shí)候不需指定,降序的關(guān)鍵字是 DESC。使用 B-Tree 索引可以提高排序性能,但只限最左匹配。關(guān)于索引可以查看以下 FAQ。

# 檢索單列
select name from student;

# 檢索多列
select name, age, class from student;

# 檢索所有列
select * from student;

# 對(duì)某列去重
select distinct class from student;

# 檢索列-選擇區(qū)間
# offset 基數(shù)為0,所以 `offset 1` 代表從第2行開始
select * from student limit 1, 10;
select * from student limit 10 offset 1;


數(shù)據(jù)過濾
# 找到學(xué)號(hào)為1的學(xué)生
select * from student where number = 1;

# 找到學(xué)號(hào)為在 [1, 10] 的學(xué)生(閉區(qū)間)
select * from student where number between 1 and 10;

# 找到未設(shè)置電子郵箱的學(xué)生
# 注意不能使用 =
select * from student where email is null;

# 找到一班中大于23歲的學(xué)生
select * from student where class_id = 1 and age > 23;

# 找到一班或者大于23歲的學(xué)生
select * from student where class_id = 1 or age > 22;

# 找到一班與二班的學(xué)生
select * from student where class_id in (1, 2);

# 找到不是一班二班的學(xué)生
select * from student where class_id not in (1, 2);


計(jì)算字段

CONCAT

select concat(name, '(', age, ')') as nameWithAge from student;

select concat('hello', 'world') as helloworld;


Math

select age - 18 as relativeAge from student;

select 3 * 4 as n;


更多函數(shù)可以查看 API 手冊(cè),同時(shí)也可以自定義函數(shù)(User Define Function)。

可以直接使用 select 調(diào)用函數(shù)

select now();
select concat('hello', 'world');


數(shù)據(jù)匯總

聚集函數(shù),一些對(duì)數(shù)據(jù)進(jìn)行匯總的函數(shù),常見有 COUNT, MIN, MAX, AVG, SUM 五種。

# 統(tǒng)計(jì)1班人數(shù)
select count(*) from student where class_id = 1;


數(shù)據(jù)分組

使用 group by 進(jìn)行數(shù)據(jù)分組,可以使用聚合函數(shù)對(duì)分組數(shù)據(jù)進(jìn)行匯總,使用 having 對(duì)分組數(shù)據(jù)進(jìn)行篩選。

# 按照班級(jí)進(jìn)行分組并統(tǒng)計(jì)各班人數(shù)
select class_id, count(*) from student group by class_id;

# 列出大于三個(gè)學(xué)生的班級(jí)
select class_id, count(*) as cnt from student
group by class_id having cnt > 3;


子查詢
# 列出軟件工程班級(jí)中的學(xué)生
select * from student where class_id in (
  select id from class where class_id = '軟件工程'
)
;


關(guān)聯(lián)聯(lián)接

雖然兩個(gè)表擁有公共字段便可以創(chuàng)建聯(lián)接,但是使用外鍵可以更好地保證數(shù)據(jù)完整性。比如當(dāng)對(duì)一個(gè)學(xué)生插入一條不存在的班級(jí)的時(shí)候,便會(huì)插入失敗。一般來說,聯(lián)接比子查詢擁有更好的性能。

# 列出軟件工程班級(jí)中的學(xué)生
select * from student, class
where student.class_id = class.id and class.name = '軟件工程';


內(nèi)聯(lián)接

內(nèi)聯(lián)接又叫等值聯(lián)接。

# 列出軟件工程班級(jí)中的學(xué)生
select * from student
inner join class on student.class_id = class.id
where class.name = '軟件工程';


自聯(lián)接

# 列出與張三同一班級(jí)的學(xué)生
select * from student s1
inner join student s2 on s1.class_id = s2.class_id
where s1.name = '張三';


外聯(lián)接

--列出每個(gè)學(xué)生的班級(jí),弱沒有班級(jí)則為null
select name, class.name from student
left join class on student.class_id = class.id;


插入數(shù)據(jù)

可以采用以下方法插入一條數(shù)據(jù),不過嚴(yán)重依賴表中列的順序關(guān)系,推薦指定列名插入數(shù)據(jù),并且可以插入部分列。

# 插入一條數(shù)據(jù)
insert into student values(8, '陸小鳳', 24, 1, 3);

insert into student(name, age, sex, class_id)
values(9, '花無缺', 25, 1, 3)
;


修改數(shù)據(jù)

更新

# 修改張三的班級(jí)
update student set class_id = 2 where name = '張三';


刪除

# 刪除張三的數(shù)據(jù)
delete from student where name = '張三';

# 刪除表中所有數(shù)據(jù)
delete from student;

# 更快地刪除表中所有數(shù)據(jù)
truncate table student;


創(chuàng)建表與更新表
# 創(chuàng)建學(xué)生表
create table student (
  id int(11) not null auto_increment,
  name varchar(50) not null,
  age smallint default 20,
  sex enum('male', 'famale'),
  score tinyint comment '入學(xué)成績(jī)',
  class_id int(11),
  createTime timestamp default current_timestamp,
  primary key (id),
  foreign key (class_id) references class (id)
);

# 根據(jù)舊表創(chuàng)建新表
create table student_copy as select * from student;

# 刪除 age 列
alter table student drop column age;

# 添加 age 列
alter table student add column age smallint;

# 刪除學(xué)生表
drop table student;


視圖

視圖是一種虛擬的表,便于更好地在多個(gè)表中檢索數(shù)據(jù),視圖也可以作寫操作,不過最好作為只讀。在需要多個(gè)表聯(lián)接的時(shí)候可以使用視圖。

create view v_student_with_classname as
select student.name name, class.name class_name
from student left join class
where student.class_id = class.id;

select * from v_student_with_classname;


約束

primiry key

任意兩行絕對(duì)沒有相同的主鍵,且任一行不會(huì)有兩個(gè)主鍵且主鍵絕不為空。使用主鍵可以加快索引。

alter table student add constraint primary key (id);


foreign key

外鍵可以保證數(shù)據(jù)的完整性。有以下兩種情況。

  • 插入張三豐5班到student表中會(huì)失敗,因?yàn)?班在class表中不存在。

  • class表刪除3班會(huì)失敗,因?yàn)殛懶▲P和楚留香還在3班。

alter table student add constraint 
foreign key (class_id) references class (id);


unique key

唯一索引保證該列值是唯一的,但可以允許有null。

alter table student add constraint unique key (name);


check

檢查約束可以使列滿足特定的條件,如果學(xué)生表中所有的人的年齡都應(yīng)該大于0。

不過很可惜mysql不支持,可以使用觸發(fā)器代替

alter table student add constraint check (age > 0);


index

索引可以更快地檢索數(shù)據(jù),但是降低了更新操作的性能。

create index index_on_student_name on student (name);

alter table student add constraint key(name );


觸發(fā)器

可以在插入,更新,刪除行的時(shí)候觸發(fā)事件。

# 創(chuàng)建觸發(fā)器
# 比如mysql中沒有check約束,可以使用創(chuàng)建觸發(fā)器,當(dāng)插入數(shù)據(jù)小于0時(shí),置為0。
create trigger reset_age before insert on student for each row
begin
  if NEW.age < 0 then
    set NEW.age = 0;
  end if;
end;

# 打印觸發(fā)器列表
show triggers;


存儲(chǔ)過程

存儲(chǔ)過程可以視為一個(gè)函數(shù),根據(jù)輸入執(zhí)行一系列的 sql 語句。存儲(chǔ)過程也可以看做對(duì)一系列數(shù)據(jù)庫操作的封裝,一定程度上可以提高數(shù)據(jù)庫的安全性。

# 創(chuàng)建存儲(chǔ)過程
create procedure create_student(name varchar(50))
begin
  insert into students(name) values (name)
;
end;

# 調(diào)用存儲(chǔ)過程
call create_student('shanyue');



SQL 練習(xí)

1. 根據(jù)班級(jí)學(xué)生的分?jǐn)?shù)進(jìn)行排名,如果分?jǐn)?shù)相等則為同一名次

select id, name, score, (
  select count(distinct score) from student s2
where s2.score >= s1.score
) as rank
from student s1
order by s1.score desc;

在where以及排序中經(jīng)常用到的字段需要添加Btree索引,因此 score 上可以添加索引。

Result:

idnamescorerank
1張三1001
3王五992
2李四983
5林仙兒784
4燕七345


2. 寫一個(gè)函數(shù),獲取第 N 高的分?jǐn)?shù)
create function getNthHighestScore(N int) return int
begin
  declare M int default N-1;
  return (
    select distinct score from student
    order by score desc limit M, 1;
  )
end;

select getNthHighestScore(2);

Result:

getNthHighestScore(2)
99


3. 檢索每個(gè)班級(jí)分?jǐn)?shù)前兩名學(xué)生,并顯示排名
select 
class.id class_id,
class.name class_name,
s.name student_name,
score,
rank
from (
  select *,
(
    select count(distinct score) from student s2
where s2.score >= s1.score
and s2.class_id = s1.class_id
  ) as rank 
from student s1
) as s
left join class on s.class_id = class.id
where rank <= 2;

--如果不想在from中包含select子句,也可以像如下檢索,不過不顯示排名
select 
class.id class_id,
class.name class_name,
s1.name name,
score
from student s1
left join class on s1.class_id = class.id
where (
select count(*) from student s2
where s2.class_id = s1.class_id
and s1.score <= s2.score) <= 2
order by s1.class_id, score desc;


Result:

class_namestudent_namescorerank
軟件工程張三1001
軟件工程王五992
市場(chǎng)營(yíng)銷燕七342
市場(chǎng)營(yíng)銷林仙兒781


FAQ

1. inner join 與 outer join 的區(qū)別是什么

2. 如何根據(jù)一個(gè)表的數(shù)據(jù)更新另一個(gè)表

比如以上 student 表保存著成績(jī),另有一表 score_correct 內(nèi)存因失誤而需修改的學(xué)生成績(jī)。

在mysql中,可以使用如下語法

update 
student,
score_correct
set student.score = score_correct.score
where student.id = score_correct.uid;


3. 索引是如何工作的

簡(jiǎn)單來說,索引分為 hashB-Tree 兩種。hash 查找的時(shí)間復(fù)雜度為O(1)。B-Tree 其實(shí)是 B+Tree,一種自平衡多叉搜索數(shù),自平衡代表每次插入和刪除數(shù)據(jù)都會(huì)需要?jiǎng)討B(tài)調(diào)整樹高,以降低平衡因子。B+Tree 只有葉子節(jié)點(diǎn)會(huì)存儲(chǔ)信息,并且會(huì)使用鏈表鏈接起來。因此適合范圍查找以及排序,不過只能搜索最左前綴,如只能索引以 a開頭的姓名,卻無法索引以 a結(jié)尾的姓名。另外,Everything is trade off。B+Tree的自平衡特性保證能夠快速查找的同時(shí)也降低了更新的性能,需要權(quán)衡利弊。

4. 如何聯(lián)接多個(gè)行的字段

在mysql中,可以使用 group_concat

select group_concat(name) from student;


5. 如何在一個(gè)sql語句中插入多行數(shù)據(jù)

values 使用逗號(hào)相隔,可以插入多行數(shù)據(jù)

insert into student(id, name) values (), (), ()


6. 如何在 select中使用條件表達(dá)式

示例,在student表中,查詢所有人成績(jī),小于60則顯示為0

select id, name, if(score < 60, 0, score) score from student;


7. 如何找到重復(fù)項(xiàng)
select name, sex, count(*) times from student
group by name, sex
having times > 1;


8. 什么是SQL注入

如有一條查詢語句為

"select * from (" + table + ");"


當(dāng)table取值 student);drop table student;-- 時(shí),語句變?yōu)榱?,?huì)刪掉表,造成攻擊。

"select * from (student); drop table student; --);"


來源:https://segmentfault.com/p/1210000011760973/read


推薦閱讀



后臺(tái)回復(fù)關(guān)鍵字:1024,獲取一份精心整理的技術(shù)干貨

后臺(tái)回復(fù)關(guān)鍵字:進(jìn)群,帶你進(jìn)入高手如云的交流群

瀏覽 41
點(diǎn)贊
評(píng)論
收藏
分享

手機(jī)掃一掃分享

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

手機(jī)掃一掃分享

分享
舉報(bào)

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

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 日韩激情网站| AⅤ视频在线观看| 亚洲手机在线| 黄色视频在线免费播放| 精品无码视频在线观看| 婷婷国产成人精品视频| 日韩无码视频播放| 俺也去俺也来| 国产操比网| 99国产在线观看| 久久久偷拍| 国产一区二区三区在线观看免费视频免费视频免费视频 | 在线观看黄色电影| 欧美色图综合网| 国产成人无码精品久在线观看| 1插菊花网| 中文字幕在线视频日本| 久热在线资源福利站| 欧美日韩男女淫乱一区二区| 精品无码一区二区三区四区| 国产精品九九| 欧美性69| 亚洲精品成人av无码| 精品国产午夜福利在线观看 | 先锋影音麻豆| 国产第56页| 亚洲精品一区二区三区四区五区六区| 午夜激情国产| 免费观看黄色在线视频| AV第一页| 欧美精品毛片| 欧美性爱香蕉视频| www久久| 亚洲日逼| 学生妹做爱视频| 日韩中文字幕人妻| 亚洲高清无码免费观看| 日日骚av一区二区三区| 亚洲精品秘一区二区三区在线观看| 国产亚洲无码激情| 特级西西444www大胆高清图片 | 日韩成人网站在线观看| 国产黄色视频免费在线观看| 大鸡巴久久久久久| 免费视频亚洲| 麻豆午夜福利视频| 国内精品人妻无码久久久影院蜜桃 | 国产卡一卡二在线观看| 国产日本在线视频| 在线免费人成视频| 午夜成人福利视频在线观看| 洞av| 超碰在线| 日本黄色视频免费看| 色综合色| 亚洲成人三区| 五月天无码视频| 国精产品一区一区三区| 无码视频一区| 九九国产精品| 俺也干| 手机看片1204| 大伊人久久| 久草网在线| 国产美女啪啪视频| 在线观看免费成人网站| 无套免费视频欧美| 日韩无码操逼视频| 狠狠躁18三区二区一区免费人| 伦理被部长侵犯HD中字| 狼人综合在线| 亚洲成人无码在线播放| 亚洲欧美成人在线观看| 精品人妻二区三区蜜桃| 婷婷久久综合久| 插插插菊花综合网| 亚洲国产激情视频| 亚洲成色A片77777在线小说| 成人久久久久一级大黄毛片中国 | 激情爱爱网| 亚洲日韩在线中文字幕| 日本电影一区二区三区| 手机AV在线播放| 影音先锋成人在线资源| 91成人网站| 人妻无码一区二区三区| 日韩视频中文| 亚洲国产日本| 亚洲小说欧美激情另类A片小说| 在线观看污网站| 亚洲激情视频在线观看| 男人的天堂视频网站| 巜痴漢電車~凌脔版2| 97人妻精品一区二区三区视频 | 欧美AAAAAAAAAA特级| 特级西西人体www高清大胆| 久久久精品中文字幕麻豆发布| 三级无码在线播放| 麻豆传媒在线| 高清无码在线视频观看| 成人网址大全| 欧美a片在线| 日韩三级AV| 欧美成人在线视频网站| 性欧美69| 中文字幕AⅤ在线| 国产VA| 一级片| 在线视频你懂得| GOGO人体做爰大胆视频| 国产成人免费视频| 九九九成人视频| 西西www444无码免费视频| 亚洲av小电影| 日本成人黄色| 欧美一级黃色A片免费看蜜桃熟了 一级a一级a免费观看免免黄‘/ | 日韩成人综合| 国产激情久久| 日本一节片在线播放| 午夜成人亚洲| 蝌蚪窝免费在线视频| 色XXX| 亚洲熟妇在线观看一区二区| 欧美人成人无码| 91成人视频在线免费观看| 欧美一级特黄AAAAAA片| 91蝌蚪视频在线观看| 亚洲xxxxx| 人人操av| 亚洲视频在线观看免费| 白虎高清无码大尺度免费在线观看 | 亚洲精品视频在线观看网站| 国产欧美毛片| 中文字幕AV免费观看| 91无码人妻精品一区二区三区四| 亚洲射色| 日本成人电影在线观看| 婷婷社区五月天| 色婷婷色五月| 久久yzy| 波多野结衣无码在线| www.zaixianshipin| 中文无码Av| 韩国无码成人电影啊荒| 黄色影院在线观看| 亚洲一级免费免费在线观看| 不卡一二三区| 欧美日韩在线视频免费播放| 免费观看高清无码视频| 特黄特色一级特黄大片| 午夜视频在线看| 微熟女导航| 日韩草逼| 日本三级网站| 炮友五月天| 97成人在线视频| 日韩大片在线观看| 欧美精品在线播放| 三级丁香在线| 免费观看成人毛片A片直播千姿| 国产一级片内射| 亚洲精品久久久久avwww潮水| 曰韩毛片| 大香蕉AV在线| 91精品国产综合久久久蜜臀图片| 青青草黄色视频| 成人欧美精品区二区三| 免费视频| 日韩免费福利视频| 操B图| 黄色a级片| aaa在线| 黄片网站免费观看| 影音先锋女人aV鲁色资源网站 | 国产在线一| 成人在线免费网站| 欧亚毛片| 高潮视频在线| 一色综合| 国产视频二区| 内射在线播放| 婷婷男人天堂| 五月婷在线观看| 午夜av福利| 色老板免费视频| 国产人妻精品一区二区三区不卡| 久久久久久久久久成人| 人妻中文在线| www.亚洲天堂| 91丨九色丨蝌蚪丨对白| 国产精品美女久久久久AV爽 | 蜜桃视频网| 国产精品欧美性爱| 影音先锋国产在线| 国产精品观看| 中文字幕三级av片| 亚洲AV无码乱码A片无码沈樵| 五月丁香激情综合| 亚洲毛片在线观看| 大香蕉伊人丁香五月| 三级av在线观看| 色色色色五月天| 精品视频一区二区三区| 射射AV| 久久精品999| 国产偷拍网站| 亚洲黄色天堂| 韩国无码视频在线观看| 成人在线免费网站| 日韩欧美亚洲| 日本有码中文字幕| 蜜臀av在线观看| 久久久久久网站| 日韩七区| 色天堂在线观看视频| 欧美sese| 西西4444WWW无视频| 探花极品无套大学生| 人人艹人人干| 香蕉婷婷亚洲丁香| 日韩福利一区| 四虎精品成人无码A片| 人人摸人人搞| 成人网站中文字幕| 欧美插逼视频| 免费在线观看AV| aⅴ免费观看| 天天干国产| 欧美日韩成人在线| 97色碰| 日本色视频| 国产成人在线免费观看| 中文字幕第一页亚洲| 91蜜桃在线观看| 在线观看免费无码视频| 精品九九九九九九| 91丨PORNY丨对白| 国产传媒三级| 欧美日韩一区二区三区四区五区六区 | 成人亚洲av| 精品毛片| 四川搡BBBBB搡BBB| 嫩草91| 熟妇人妻中文字幕无码老熟妇| 成人黄色一级| 午夜做爱视频| 操操操操操| 瑟瑟免费视频| 美女白嫩嫩大BBB欣赏| 黄网站在线观看| 国产成人精品a视频一区| 国产成人高清无码| 国产精品色情A级片| 日韩一区二区三区无码电影 | 久久久久久久久免费看无码| 99热加勒比| 五月天三级片| 91豆花视频| 日韩欧美黄色片| 天天操天天操天天操天天操| 午夜操一操| 最近中文字幕在线观看| 精品一区二区三区四区视频| 午夜免费播放观看在线视频| 亚洲大逼| 18XXX亚洲HD护士JD| 久久久久久久久久久久成人| 日韩a级毛片| 亚洲AV无码成人精品区天堂小说 | 欧美熟妇擦BBBB擦BBBB| 激情无码国产| 亚洲成人一区二区在线观看| 91精品国产一区二区三区| 永久黄网站| 国产aaaaaaaaaaaaa| 喷水在线观看| 日韩av中文在线| 一级日逼视频| 99久久九九| 日韩一级在线免费观看| 91成人小电影| 天堂无码视频在线播放| 亚洲国产日本| 综合欧美国产视频二区| 97操| 午夜福利成人| 国产成人777777精品综合| 丁香五月婷婷色| 91成人在线影院| 91在线免费视频观看| 神马午夜av| 黄色无码av| 欧美日本国产| 国产美女做爱视频| 亚洲AV成人无码久久精品麻豆 | 大香蕉婷婷五月天| 亚洲日韩中文字幕| 亚洲无码久久精品| 水蜜桃一区二区| 亚洲成人av在线播放| 国精产品一区一区三区| 人人摸人人操人人看| 99热在线免费| 欧美日韩亚洲一区二区三区| 日韩在线精品视频| 人人草超碰| 在线免费看黄色视频| 国产不卡网| 亚洲欧美在线免费观看| 国产成人一区二区三区A片免费| 日韩在线一区二区三区四区| 久久成人精品| 亚洲毛片网站| 成人无码一区| 国产亚洲精品成人a| 国产视频中文字幕| 超碰青青青| 欧美三级视频在线观看| 亚洲色在线播放| 国产精品91在线| 成人性生活A级毛片网站| 秘亚洲国产精品成人网站| 亚洲在线观看视频| 日本a在线免费观看| 亚洲AV在线观看| 国产剧情一区二区三区| 日韩中文在线观看| 成人黄色无码视频| 天天干天天爽| 爱爱免费看片| 人人色人人操| 色网站在线| 中文字幕乱伦性爱| 黄色免费看视频| brazzers疯狂作爱| 日韩无码操逼视频| www.99免费视频| 亚洲性爱一区二区| 北岛玲视频在线| 免费操逼网| 一区二区小视频| 日本爱爱小视频| 苍井空一区二区三区四区| 国产伦乱| 97人妻精品一区二区三区软件| 国产在线成人| 激情丁香五月婷婷| 人人妻人人澡人人爽| 久久er99| 欧美国产日韩综合在线观看170| wwwsesese| 好吊AV| 久久久久久性爱| 大香蕉伊人操| 亚洲AV无码电影| 成人黄色AV网站| 北条麻妃无码在线播放| 欧美成人电影在线观看| 国产福利视频在线观看| 青青草在线免费视频| 男人天堂AV片| 三级网站免费观看| 国产免费高清无码| 人人操人人操人人操| 国精产品一区一区三区有限公司杨| 小骚逼操死你| 亚洲AV无码专区在线播放中文| 撸一撸成人在线做爱视频。| 亚洲精品久久久久avwww潮水| 久久成人18免费网站波多野结衣| 水蜜桃视频免费观看| 日韩一级免费观看| 亚洲精品一区二区三区| 中文字幕A片| 翔田千里无码精品| 91蝌蚪视频在线观看| 插逼免费视频| 91拍真实国产伦偷精品| 2025最新国产成人精品| 色吧综合网| 一本色道久久综合狠狠躁的推荐| 欧美性爱第四页| 特级特黄AAAAAAAA片| 五十路老国产| 亚洲无码一级电影| 欧美黄色毛片| 日韩视频在线观看一区| 中文字幕在线观看亚洲| 少妇搡BBBB搡BBB搡AA| 国产麻豆电影在线观看| 影音先锋国产精品| 欧美成人网址在线观看| 最新一区二区| 99er在线视频| 久久99精品久久久久| 午夜av影院| 中文字幕少妇| 人妻77777| 日韩性爱视频网站| 日韩av无码电影| 人人爽人人爽| 乱子伦国产精品一区二区| 国产精品色色色| 精品香蕉视频| 欧美日韩中文字幕在线视频| 欧美视频在线免费| 91成人一区二区三区| 91精品久久久久久久久久久久| 超碰199| 特级西西444WWW视频| 国产乱色精品成人免费视频| 色婷婷成人做爰A片免费看网站| 亚洲区一| 欧美熟女内射| 午夜激情视频在线观看| 操精品| 午夜偷拍网站| 亚洲人妻在线视频| 天天爽夜夜| 韩国精品一区| 一级女婬片A片AAAA片| 99re6热在线精品视频| 日韩中文久久| 国产精品1| 少妇人妻精品| 思思热在线视频播放| 国产黄色片在线观看| www.豆花视频成人版| av日韩在线播放| 日逼一级片| 裸体美女视频欧美18| 成年人免费看视频| 婷婷久久五月| 日韩免费成人| 91探花秘入囗| 欧美高清无码| 翔田千里一区二区三区| 毛片网站视频| 逼特逼视频网站| 加勒比色综合| 国产v在线观看| 波多野结衣Av在线| 最近中文字幕免费mv第一季歌词強上| 婷婷五月精品| 99re视频在线播放| 天堂VA蜜桃一区二区三区| 操逼在线播放| 中文字幕无码观看| 逼逼爱插插网站| 精品A片| 99久久99久久精品免费看小说。| 一级A片黃色A片| 国产一级内射| 婷婷五月综合在线| 欧美精品A片| 久久久久久麻豆| 成人性生活免费视频| 欧美VA视频| 丁香五月成人网| 蜜挑视频一区二区三区| 亚洲人在线| 国产手机拍视频推荐2023| 91人妻一区二区三区无不码超满 | 蜜桃无码一区| 波多野结衣无码视频| 91精品国产三级| 亚洲精品国产AV婷婷| 久久婷婷青青| 99热这里都是精品| 午夜无码影院| 亚韩av| 亚洲成人情趣大香蕉| 久久精品福利| 无码成人av| 欧美一本在线| 婷婷精品秘进入| 91精品视频在线| 三级片麻豆| 草草影院第一页| 少妇人妻一级A毛片| 色mm在线播放| 亚洲视频综合| 懂色av懂色av粉嫩av无码| 人人人爽| 综合五月婷婷| 水果派AV解说| 日本不卡视频在线| 无码专区中文字幕| 精品久久久久久亚洲| 中文字幕乱伦性爱| 国产精品扒开腿做爽爽爽A片唱戏 中文字幕一区二区三区精华液 | 欧美性极品少妇精品网站| 爱爱视频免费| 授乳奶水x88MAV| 日逼黄色视频| 不卡无码av| 亚洲在线观看| 在线看黄片| 欧美激情在线观看| av无码毛片| 内射学生妹J亅| AV大香蕉| 久草综合在线| 黄色激情在线| 久久精品久| 欧美精品在线免费观看| 色色网站免费| 日韩欧美中文字幕在线观看| 99视频久久| AV婷婷五月天| 日韩成人AV电影| 麻豆少妇| 中文一区二区| 成人电影91| 911精品国产一区二区在线| 乱伦AV片| 无码人妻精品一区二区蜜桃网站| 久久91人妻无码精品蜜桃HD| 538在线视频| 亚洲黄片免费| 九九热re99re6在线精品| 日韩永久免费| 人妻少妇精品视频一区二区三区| 另类老妇性BBBWBBW| 久久久久久网| 加勒比无码| 欧美一区二区三区成人片在线| 中文字幕欧美激情| 亚洲天堂2016| 中文无码精品欧美日韩| 日本Sm/调教/捆绑/紧缚| 久久久久久久免费视频| 亚洲无码观看视频| 好吊顶亚洲AV大香蕉色色| 亚洲无码一级视频| 国产成人精品亚洲男人的天堂 | 色综合99久久久无码国产精品| 国产在线成人视频| 国产码在线成人网站| 国产精品无码永久免费不卡 | 真实野外打野视频| 99er在线观看视频| 九九精品免费视频| 一区二区小视频| 久久成人三级| 亚洲天堂中文字幕| 在线一区二区三区四区| 亚洲免费黄色电影| 京熱大亂交无碼大亂交| 日韩网站在线观看| 男人天堂无码视频| 欧美一级成人片| 久久久久久国产免费A片| 日韩无码免费| 午夜av无码| 国产亚洲精品久久久久动| 亚洲无码高清一区| 黑人精品欧美一区二区蜜桃| 尤物视频在线观看视频| 波多野结衣无码AV专区| 视频一区二区免费| 黑人vs亚洲人在线播放| 高清无码在线免费观看| 中文字幕日韩欧美| 男女操网站| 熟女乱论| 91狠狠综| 懂色AV一区二区三区国产中文在线| 26uuu国产| 999这里只有精品| 麻豆911精一区二区| 欧美性之站| 国产黄h| 超碰青娱乐| www.av在线| 亚洲日韩高清无码| 中文字幕第6页| 婷婷色在线播放| 亚洲精品久久久久avwww潮水| 五月天婷婷激情视频| 国产口爆视频| 福利在线看| 国产无限资源| 国产精品久久久久久最猛| 麻豆videos| 亚洲蜜桃av一区| 99re在线| 国产成人视频| 亚洲乱伦网| 成人做爰A片一区二区app| 国产偷拍网站| 影音先锋成人资源网| 日韩VA| 成人欧美精品区二区三| 91精品人妻少妇无码影院| 亚洲电影在线| 嫩小槡BBBB槡BBBB槡免费-百度| 天天综合天天| 在线观看黄色网页| 加勒比国产在线| 中文字幕在线视频无码| 国产精品黄视频| 黄色一区在线| 黄色毛片网站| 一区二区三区成人| 欧美亚洲视频| 91九色口爆吞精| 狠狠操在线视频| 东方av在线观看| 黄色AA片| 91资源在线| 五月婷婷在线播放| 少妇嫩搡BBBB搡BBBB| 爱爱黄色视频| 十八禁免费网站| 国产精品爽爽久久久久| 蜜芽成人在线| 日韩三级在线观看| 日本成人一区| 97人妻精品一区二区三区视频| 天天干天天舔| 夜夜撸网站| 伊人中文在线| www.激情| 黄色成人网站在线观看免费 | 亚洲无码一级视频| 午夜私人福利| 国产精品囯产三级囯产AV野外| 永久中文字幕| 中文字幕乱码视频| 国产色婷婷精品综合在线播放| 9I成人免费版视频| 一本色道久久综合无码人妻四虎| 免费看黄色毛片| 91大神网址| 精品免费在线| 性爱91视频| 在线播放国产精品| 91逼站| 中文字幕AV第一页| 欧日韩在线| 无码伦理| 大香蕉1024| www.婷婷六月天| 男人午夜天堂| 无码777| 熟练中出-波多野结衣| 成人视频免费| www.人人操| 国产特级毛片| 黃色一级A片一級片| 日韩v| 欧美成人精品欧美一级乱黄| 豆花视频在线| 日韩一级| 欧美午夜精品一区二区蜜桃| 乱伦a片| 亚洲综合五月天| a片小视频| A∨无码| 天堂网2018| 国产精品久久久久无码AV| 久久波多野结衣一区二区| 国产精品永久久久久久久久久| 手机AV在线播放| 91亚洲精品在线观看| 一区二区无码区| 国产三级午夜理伦三级| 大鸡巴操骚逼视频| 韩国高清无码视频| 在线免费看av| 在线观看日韩| 免费看性蜜桃| 毛片在线看片| 1024手机在线视频| 内射网站在线观看| 欧美不卡在线观看| 无码爆操| a片免费在线| 国产在线观看免费| 玖玖成人电影| 国产一区二区三区免费播放| 成人精品三级AV在线看| www.三级| 木下凛凛子AV888AV在线观看| 亚洲高清无码久久| 一区二区高清无码视频| 青青操色| 伊人久久成人| 国产美女AV| 久久在线免费视频| AV网站免费看| 最近中文字幕免费MV第一季歌词怀孕 | 五月婷婷基地| 91在线精品一区二区| 欧美视频一区二区三区四区| 中文字幕++中文字幕明步| 熟女人妻一区二区三区| 国产成人精品国内自产拍免费看| 欧美香蕉在线| 毛片网站视频| 国产中文在线视频| 久久亭亭| 久久99热这里只频精品6学生| 露脸丨91丨九色露脸| 精品夜夜澡人妻无码AV| 污污污污污www网站免费民国| 伊人啪啪| av乱伦小说| 亚洲综合中文字幕在线| 日逼91| 日本a级视频| 免费无码成人片在线观看在线| 人人摸人人干| 欧美日韩AV| 91蝌蚪在线视频| 日韩在线一区二区三区四区| 亚洲最大福利视频| 久久噜噜噜精品国产亚洲综合 | 二区三区不卡| 久久久久久亚洲AV黄床| 超碰一区二区三区| 亚洲午夜精品久久久| 亚洲无码专区在线观看| 西西人体WW大胆无码| 亚洲无码影院| 先锋影音男人| 日韩视频中文字幕在线| 久久婷婷国产综合| 最新国产视频| 人人妻人人爽人人操| 青青青操| 操欧美女人| 国产丰满大乳无码免费播放| 97大香蕉在线视频| 久久成人电影院| 国产www在线观看| 久久久国产视频| 麻豆视频在线看| 日本草逼网| 午夜资源网| 欧美人人爱| 神马午夜精品| 免费看一区二区三区A片| 在线亚洲福利| 午夜无码福利视频| 爆操欧美| av在线观看中文字幕| 中文字幕在线观看免费高清完整版在线观看 | 亚洲无码福利视频| 欧美怡春院| 午夜老湿机| 亚洲日韩精品无码| 五月丁香六月婷婷综合| 免费的A片| 黄色免费网站| 一本免费视频| 在线中文字幕亚洲| 国产av日韩| 无码中文字幕网站| 亚洲视频在线免费观看| 东方AV免费在线观看| av六月天| а√最新版在线中文8| 免费看黃色AAAAAA片| 一见钟情的韩国电影| 蜜桃无码一区| 午夜黄色视频在线观看| 99久久99久久| www.麻豆网91成人久久久| 丁香六月操| 精品国产乱码| 青草超碰| 激情图区| 亚洲韩国中文字幕| 午夜日屄| 大香蕉伊人精品| 777Av| 黄色免费网站| 精品久久三级片| 在线免费观看a| 四虎精品成人无码A片| av高清无码| 成人无码高清在线观看| 久久婷婷网站| 五月天成人网址| 3D动漫精品啪啪一区二区免费| AV一二区| 福利导航视频| 一级黄片免费观看| 国产三级片视频| 国产伊人自拍| 国产一级二级三级片| 口爆吞精在线| 一本在线| 日韩在线小电影| 久久精品999| 成人午夜无码视频| 欧美人操逼一二区| 操逼视频看看| 色婷婷婷| 色色五月婷婷| 青青娱乐亚洲无| 国产91久久婷婷一区二区| 婷色| 国产av福利| 成人影片在线观看18| 蜜桃成人无码区免费视频网站| 免费网站观看www在线观看| 久久九九99| av一区在线| 精品日韩一区二区三区| 亚州AV无码| 亚洲精品国产成人无码区在线 | 五月伊人激情| 91av在线播放| 欧美日韩视频一区二区| 亚洲日韩欧美一区二区天天天| 在线观看的av| 99九九99九九九99九他書對| 免费在线看A| 黄片高清免费| 性感成人在线| 日韩无码二级| 成年视频网站| 久久久久综合| 欧美怕怕怕| 精品中文在线| 国内老熟妇对白HDXXXX| 婷婷色色婷婷五月天| 日本一级片免费看| 日本五十路熟女视频| 日本黄色免费视频| 麻豆视频在线播放| 亚洲一区二区AV| 91日韩欧美| 国产av电影网| 欧美一级婬片AAAAAA片| 999无码| 婷婷二区| 亚洲中文字幕在| 性少妇| 国产成人精品国内自产拍免费看| www.豆花视频成人版| 黄色成人网站在线免费观看| 一级黄色av| 亚洲中文字幕免费在线观看| 黄色无码网站| 国产夫妻av| 国产毛片毛片毛片毛片毛片| 中国女人操逼视频| 一级乱伦网站| 91AV免费观看| 欲色AV| 无码综合| 九九碰九九爱97超碰| 中文字幕精品人妻在线| 69成人| 欧美在线视频免费观看| 中文字幕三级片在线观看| 91综合视频在线播放| 成人午夜毛片| 四川少妇搡bbbb搡bbbb| 欧美A黄片| 欧美日韩国产一区二区三区| 手机在线看片av| 色屁屁草草影院ccyycom| 国产欧美在线| 天天艹天天| 爱搞搞网| 按摩忍不住BD中文字幕| 操逼视频高清无码| 久热精品在线观看| 鸡巴在线观看| 精品人妻无码一区二区三区四川人| 亚洲欧美国产毛片在线| 欧美日韩免费| 国产视频a| 人人澡人人干| 操美女嫩逼| 91无码秘蜜桃一区二区三区-百度| 久久黄色网| 色噜噜狠狠一区二区三区300部 | 思思热免费视频| 色综合久久天天综合网| 天天玩夜夜玩天天玩国产99| 伊香蕉大综综综合| 五十路在线视频| 久久色在线视频| 亚洲五月天婷婷| 狠狠干亚洲视频| 久久久久久久伊人| 淫揉BBB揉揉揉BBBBB| 超碰97观看| 91精品国产综合久久久蜜臀主演| 成人一区二区三区| 久久肏逼| 午夜激情视频在线观看| 欧美日韩国产成人在线观看| 囯产精品久久久久久久|