精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

細(xì)數(shù)你應(yīng)該修煉的Oracle基本功

數(shù)據(jù)庫(kù) Oracle
Oracle數(shù)據(jù)庫(kù)的基本功,主要涉及一些小算法,比如求部門(mén)中誰(shuí)的薪水最高,誰(shuí)是經(jīng)理等等。希望能滿足那些苦苦找尋正確解決方法的DBA們。

以下的文章,主要為大家在實(shí)際工作中提供一種解決方法。

---用戶名:scott

---密  碼:tiger

---*********Oracle表連接與子查詢示例************

---求部門(mén)中哪些人的薪水最高

  1. select ename,sal from emp  
  2. join (select max(sal) max_sal, deptno from emp group by deptno) t  
  3. on (emp.sal = t.max_sal and emp.deptno = t.deptno); 

---求部門(mén)平均薪水的等級(jí)

  1. select deptno,avg_sal,grade from 
  2. (select deptno,avg(sal) avg_sal from emp group by deptno) t  
  3. join salgrade s on (t.avg_sal between s.losal and s.hisal); 

---求部門(mén)平均的薪水等級(jí)

  1. select deptno,avg(grade) from 
  2. (select deptno,ename,grade from emp join salgrade s on (emp.sal between s.losal and s.hisal)) t  
  3. group by deptno; 

---雇員中哪些人是經(jīng)理人

  1. select ename from emp where empno in (select distinct mgr from  emp); 

---不用組函數(shù),求薪水的最高值

  1. select sal from emp where sal not in 
  2. (select distinct e1.sal from emp e1 join emp e2 on (e1.sal < e2.sal)); 

---用組函數(shù),求薪水的最高值

  1. select max(sal) from emp; 

---求平均薪水最高的部門(mén)的部門(mén)編號(hào)

  1. select deptno , avg_sal from 
  2.  (select avg(sal) avg_sal,deptno from emp group by deptno) t  
  3. where avg_sal =  
  4.  (select  max(avg_sal) from (select avg(sal) avg_sal,deptno from emp group by deptno) t); 

----組函數(shù)嵌套的寫(xiě)法

  1. select deptno , avg_sal from 
  2.  (select avg(sal) avg_sal,deptno from emp group by deptno) t  
  3. where avg_sal =  
  4.  (select  max(avg(sal)) from emp group by deptno); 

---求平均薪水最高的部門(mén)的名稱

  1. select dname from dept   
  2. where deptno =  
  3. (  
  4.  select deptno from 
  5.  (select avg(sal) avg_sal,deptno from emp group by deptno) t  
  6.  where avg_sal =  
  7.  (select  max(avg_sal) from (select avg(sal) avg_sal,deptno from emp group by deptno) t)  
  8. ); 

---求平均薪水的等級(jí)最低的部門(mén)的部門(mén)名稱

  1. select avg(sal) avg_sal,deptno from emp group by deptno  

--部門(mén)平均薪水

  1. select min(avg_sal) from 
  2. (  
  3. select avg(sal) avg_sal,deptno from emp group by deptno  

--平均工資的最小值

  1. select avg_sal,deptno from   
  2. (select avg(sal) avg_sal,deptno from emp group by deptno) t  
  3. where avg_sal =  
  4. (  
  5. select min(avg_sal) from 
  6. (  
  7. select avg(sal) avg_sal,deptno from emp group by deptno  
  8. )  

--平均工資的最小值及部門(mén)編號(hào)

  1. select t.avg_sal,t.deptno,s.grade from   
  2. (select avg(sal) avg_sal,deptno from emp group by deptno) t  
  3. join salgrade s on (t.avg_sal between s.losal and s.hisal)   
  4. where avg_sal =  
  5. (  
  6. select min(avg_sal) from 
  7. (  
  8. select avg(sal) avg_sal,deptno from emp group by deptno  
  9. )  

--平均工資的最小值及部門(mén)編號(hào)和工資等級(jí)

  1. select d.dname,t.avg_sal,t.deptno,s.grade from   
  2. (select avg(sal) avg_sal,deptno from emp group by deptno) t  
  3. join salgrade s on (t.avg_sal between s.losal and s.hisal)   
  4. join dept d on (t.deptno = d.deptno)  
  5. where avg_sal =  
  6. (  
  7. select min(avg_sal) from 
  8. (  
  9. select avg(sal) avg_sal,deptno from emp group by deptno  
  10. )  

--平均工資的最小值及部門(mén)編號(hào)和工資等級(jí)及部門(mén)名稱

----Another 按照題意的寫(xiě)法

  1. select t1.deptno,t1.avg_sal,grade,d.dname from 
  2. (  
  3. select deptno,avg_sal,grade from 
  4. (select deptno,avg(sal) avg_sal from emp group by deptno) t  
  5. join salgrade s on (t.avg_sal between s.losal and s.hisal)  
  6. ) t1  
  7. join dept d on (t1.deptno = d.deptno)   
  8. where grade =  
  9. (   
  10. select min(grade) from 
  11. (  
  12. select deptno,avg_sal,grade from 
  13. (select deptno,avg(sal) avg_sal from emp group by deptno) t  
  14. join salgrade s on (t.avg_sal between s.losal and s.hisal)  
  15. )  
  16. ); 

---創(chuàng)建視圖或者表,如果沒(méi)有權(quán)限

  1. conn sys/sys as sysdba; 

--已連接。

  1. grant create tablecreate view to scott; 

--授權(quán)成功。

---創(chuàng)建視圖

  1. create view v$_dept_avg_sal_info as 
  2.   select deptno,avg_sal,grade from 
  3. (select deptno,avg(sal) avg_sal from emp group by deptno) t  
  4. join salgrade s on (t.avg_sal between s.losal and s.hisal); 

--視圖已建立。

---創(chuàng)建這個(gè)v$_dept_avg_sal_info視圖可以簡(jiǎn)化上面那個(gè)查詢的重復(fù)代碼

  1. select t1.deptno,t1.avg_sal,grade,d.dname from 
  2. v$_dept_avg_sal_info t1  
  3. join dept d on (t1.deptno = d.deptno)   
  4. where grade =  
  5. (   
  6. select min(grade) from 
  7. v$_dept_avg_sal_info  
  8. ); 

---求比普通員工的最高薪水還要高的經(jīng)理的名稱

  1. select max(sal) from emp where empno not in 
  2. (select distinct mgr from emp where mgr is not null); 

--普通員工的最高薪水

  1. select ename from emp   
  2. where empno in (select distinct mgr from emp where mgr is not null)  
  3. and sal >  
  4. (  
  5. select max(sal) from emp where empno not in(select distinct mgr from emp where mgr is not null)  
  6. ); 

--普通員工的最高薪水還要高的經(jīng)理的名稱

--- Oracle 聯(lián)機(jī)歸檔日志 備份方式

---求薪水最高的第6名到第10名雇員(rownum)

  1. select ename,sal from 
  2. (select ename,sal,rownum r from 
  3. (  
  4. select ename, sal from emp order by sal desc 
  5. )  
  6. where r>=6 and r<=10; 

---五種約束條件

  1. create table stu  
  2. (   
  3. id number(2),  
  4. name varchar2(20) constraint stu_name_nn not null,--非空約束  
  5. sex  number(2),  
  6. age number(3),  
  7. sdate date,  
  8. grade number(3) default 1,  
  9. class number(3),  
  10. email varchar2(50),  
  11. constraint stu_name_email_uin unique(name,email)--唯一主鍵  
  12. ) ;  
  13.  
  14.  
  15. insert into stu(name,email) values('','tianyuexing@163.com'
  16. --ORA-01400: 無(wú)法將 NULL 插入 ("SCOTT"."STU"."NAME")  
  17.  
  18.  
  19. insert into stu(name,email) values('tianyuexing','tianyuexing@163.com');  
  20. insert into stu(name,email) values('tianyuexing','tianyuexing@163.com');
  21. --ORA-00001: 違反唯一約束條件 (SCOTT.STU_NAME_EMAIL_UIN) 

---PL/SQL 一個(gè)簡(jiǎn)單的存儲(chǔ)過(guò)程 分為四塊1.聲明declare 2.begin 3.exception 4.end

  1. set serveroutput on;  
  2.  declare 
  3. v_num number :=0;  
  4. begin 
  5. v_num :=2/v_num;  
  6. dbms_output.put_line(v_num);  
  7. exception  
  8. when others then 
  9. dbms_output.put_line('error');  
  10. end

---%type 變量聲明的好處。

  1. declare 
  2. v_empno2 emp.empno%type;  
  3. begin 
  4. dbms_output.put_line('test');  
  5. end

---Table 變量類型

  1. declare 
  2. type type_table_emp_empno is table of emp.empno%type index by binary_integer;  
  3. v_empnos type_table_emp_empno;  
  4. begin 
  5. v_empnos(0) := 2999;  
  6. v_empnos(1) := 2434;  
  7. v_empnos(-1) := 8989;  
  8. dbms_output.put_line(v_empnos(-1));  
  9. end

---Record 變量類型

  1. declare 
  2. type type_record_dept is record  
  3. (  
  4. deptno dept.deptno%type,  
  5. dname  dept.dname%type,  
  6. loc dept.loc%type  
  7. );  
  8. v_temp type_record_dept;  
  9. begin 
  10. v_temp.deptno := 20;  
  11. v_temp.dname := 'tianyuexing';  
  12. v_temp.loc := 'qhd';  
  13. dbms_output.put_line(v_temp.dname || ' ' ||v_temp.loc);  
  14. end

---使用 %rowtype聲明record變量

  1. declare 
  2. v_temp dept%rowtype;  
  3. begin 
  4. v_temp.deptno := 20;  
  5. v_temp.dname := 'yuexingtian';  
  6. v_temp.loc := 'qhd';  
  7. dbms_output.put_line(v_temp.dname || ' ' ||v_temp.loc);  
  8. end

---SQL語(yǔ)句的運(yùn)用

  1. declare 
  2. v_ename emp.ename%type;  
  3. v_sal emp.sal%type;  
  4. begin 
  5. select ename,sal into v_ename,v_sal from emp where empno = 7369;  
  6. dbms_output.put_line(v_ename ||' '||v_sal);  
  7. end;  
  8.  
  9.  
  10. declare 
  11. v_emp emp%rowtype;  
  12. begin 
  13. select * into v_emp from emp where empno = 7369;  
  14. dbms_output.put_line(v_emp.ename);  
  15. end;  
  16. --insert 語(yǔ)句  
  17. declare 
  18. v_deptno dept.deptno%type := 50;  
  19. v_dname dept.dname%type :='yuexingtian';  
  20. v_loc dept.loc%type := '秦皇島';  
  21. begin 
  22. insert into dept2 values (v_deptno,v_dname,v_loc);  
  23. commit;  
  24. end

---sql%rowcount 多少條記錄被影響

  1. declare 
  2. v_deptno emp2.deptno%type := 10;  
  3. v_count number;  
  4. begin 
  5. update emp2 set sal = sal/2 where deptno = v_deptno;  
  6. dbms_output.put_line(sql%rowcount ||'條記錄被影響');  
  7. end

--create語(yǔ)句

  1. begin 
  2. execute immediate 'create table T (nnn varchar2(20) default ''yuexingtian'')';  
  3. end

---if語(yǔ)句,取出7369的薪水,如果<1200,則輸出'low',如果<2000則輸出'middle',否則輸出'high'.

  1. declare 
  2. v_sal emp.sal%type;  
  3. begin 
  4. select sal into v_sal from emp  
  5. where empno = 7369;  
  6. if(v_sal < 1200) then 
  7. dbms_output.put_line('low');  
  8. elsif(v_sal < 2000) then 
  9. dbms_output.put_line('middle');  
  10. else 
  11. dbms_output.put_line('high');  
  12. end if;  
  13. end

---循環(huán) loop (相當(dāng)于do while)

  1. declare 
  2. i binary_integer := 1;  
  3. begin 
  4. loop  
  5. dbms_output.put_line(i);  
  6. i := i+1;  
  7. exit when (i>=11);  
  8. end loop;  
  9. end;   
  10. ---when ……loop (相當(dāng)于while)  
  11. declare 
  12. j binary_integer := 1;   
  13. begin 
  14. while j<11 loop  
  15. dbms_output.put_line(j);  
  16. j := j+1;  
  17. end loop;  
  18. end;   
  19. ---for ...in... loop   
  20. begin 
  21. for k in 1..10 loop  
  22. dbms_output.put_line(k);  
  23. end loop;  
  24. for k in reverse 1..10 loop --逆序  
  25. dbms_output.put_line(k);  
  26. end loop;   
  27. end

--- 異常處理

  1. declare 
  2. v_temp number(4);  
  3. begin 
  4. select empno into v_temp from emp where deptno = 10;  
  5. exception  
  6. when too_many_rows then --多條記錄的異常  
  7. dbms_output.put_line('記錄太多了');  
  8. when others then 
  9. dbms_output.put_line('error');  
  10. end;  
  11.  
  12.  
  13. declare 
  14. v_temp number(4);  
  15. begin 
  16. select empno into v_temp from emp where empno = 4444;  
  17. exception  
  18. when no_data_found then 
  19. dbms_output.put_line('沒(méi)有數(shù)據(jù)');  
  20. end

---記錄數(shù)據(jù)庫(kù)錯(cuò)誤信息的errorlog

  1. create table errorlog  
  2. (  
  3. id number primary key,  
  4. errcode number,  
  5. errmsg varchar2(1024),  
  6. errdate date 
  7. );  
  8.  
  9.  
  10. create sequence seq_errorlog_id start with 1 increment by 1; --創(chuàng)建遞增序列  
  11.  
  12.  
  13. --PL/SQL  
  14. declare 
  15. v_deptno dept.deptno%type :=10;  
  16. v_errcode number;  
  17. v_errmsg varchar2(1024);  
  18. begin 
  19. delete from dept where deptno = v_deptno;  
  20. commit;  
  21. exception  
  22. when others then 
  23. rollback;  
  24. v_errcode := SQLCODE;  
  25. v_errmsg := SQLERRM;  
  26. insert into errorlog values (seq_errorlog_id.nextval,v_errcode,v_errmsg,sysdate);  
  27. commit;  
  28. end;  
  29.  
  30.  
  31. select to_char(errdate,'YYYY-MM-DD HH24:MI:ss'from errorlog; ---具體的出錯(cuò)時(shí)間。 

---游標(biāo)

  1. declare 
  2. cursor c is   
  3. select * from emp;  
  4. v_emp c%rowtype;  
  5. begin 
  6. open c;  
  7. fetch c into v_emp;  
  8. dbms_output.put_line(v_emp.ename);  
  9. close c;  
  10. end;  
  11. ---游標(biāo),循環(huán)取出所有的記錄。  
  12. declare 
  13. cursor c is 
  14. select * from emp;  
  15. v_emp c%rowtype;  
  16. begin 
  17. open c;  
  18. loop  
  19. fetch c into v_emp;  
  20. exit when (c%notfound);  
  21. dbms_output.put_line(v_emp.ename);  
  22. end loop;  
  23. close c;   
  24. end;   
  25. ---游標(biāo)while 循環(huán)  
  26. declare 
  27. cursor c is 
  28. select * from emp;  
  29. v_emp c%rowtype;  
  30. begin 
  31. open c;  
  32. fetch c into v_emp;  
  33. while (c%found) loop  
  34. dbms_output.put_line(v_emp.ename);  
  35. fetch c into v_emp;  
  36. end loop;  
  37. close c;  
  38. end;   
  39. ---for循環(huán) 不用聲明變量,不用open游標(biāo) 不用close游標(biāo) 不用fetch  
  40. declare 
  41. cursor c is   
  42. select * from emp;  
  43. begin 
  44. for v_emp in c loop  
  45. dbms_output.put_line(v_emp.ename);  
  46. end loop;  
  47. end

---帶參數(shù)的游標(biāo)

  1. declare 
  2. cursor c(v_deptno emp.deptno%type, v_job emp.job%type)  
  3. is 
  4. select ename,sal from emp where deptno = v_deptno and job = v_job;  
  5. begin 
  6. for v_temp in c(30,'CLERK') loop  
  7. dbms_output.put_line(v_temp.ename);  
  8. end loop;  
  9. end

---課更新的游標(biāo)

  1. declare 
  2. cursor c   
  3. is 
  4. select * from emp2 for update;  
  5. begin 
  6. for v_temp in c loop  
  7. if (v_temp.sal < 2000) then 
  8. update emp2 set sal = sal * 2 where current of c;   
  9. elsif (v_temp.sal = 5000) then 
  10. delete from emp2 where current of c;  
  11. end if;  
  12. end loop;  
  13. commit;  
  14. end

----創(chuàng)建存儲(chǔ)過(guò)程

  1. create or replace procedure p  
  2. is 
  3. cursor c is 
  4. select * from emp2 for update;  
  5. begin 
  6. for v_emp in c loop  
  7. if (v_emp.deptno = 10) then 
  8. update emp2 set sal = sal + 10 where current of c;  
  9. elsif (v_emp.deptno = 20) then 
  10. update emp2 set sal = sal + 20 where current of c;  
  11. else 
  12. update emp2 set sal = sal + 50 where current of c;  
  13. end if;  
  14. end loop;  
  15. commit;  
  16. end;   
  17. ---執(zhí)行存儲(chǔ)過(guò)程  
  18. exec p;  
  19. ---或者  
  20. begin 
  21. p;  
  22. end

---帶參數(shù)的存儲(chǔ)過(guò)程

  1. create or replace procedure 
  2. max_num(v_a in number,v_b number,v_ret out number,v_temp in out number)  
  3. is 
  4. begin 
  5. if(v_a > v_b) then 
  6. v_ret := v_a;  
  7. else 
  8. v_ret := v_b;  
  9. end if;  
  10. v_temp := v_temp + 1;  
  11. end;  
  12. ---調(diào)用這個(gè)存儲(chǔ)過(guò)程  
  13. declare 
  14. v_a number :=3;  
  15. v_b number :=4;  
  16. v_ret number;  
  17. v_temp number :=5;  
  18. begin 
  19. max_num(v_a, v_b, v_ret, v_temp);  
  20. dbms_output.put_line(v_ret);  
  21. dbms_output.put_line(v_temp);  
  22. end

---函數(shù)

  1. create or replace function   
  2. sal_tax(v_sal number)  
  3. return number  
  4. is 
  5. begin 
  6. if (v_sal < 2000) then 
  7. return 0.10;  
  8. elsif (v_sal < 2750) then 
  9. return 0.15;  
  10. else 
  11. return 0.20;  
  12. end if;  
  13. end;   
  14. --調(diào)用這個(gè)函數(shù)(別的函數(shù)怎么用,這個(gè)函數(shù)就怎么用)  
  15. select ename,sal,sal_tax(sal) from emp; 

----觸發(fā)器

  1. --創(chuàng)建一個(gè)日志表  
  2. create table emp2_log  
  3. (  
  4. uname varchar2(20),  
  5. action varchar2(10),  
  6. atime date 
  7. );  
  8. --創(chuàng)建一個(gè)觸發(fā)器  
  9. create or replace trigger trig  
  10. after insert or delete or update on emp2 for each row  
  11. begin 
  12. if inserting then 
  13. insert into emp2_log values (user,'insert',sysdate);  
  14. elsif updating then 
  15. insert into emp2_log values (user,'update',sysdate);  
  16. elsif deleting then 
  17. insert into emp2_log values (user,'delete',sysdate);  
  18. end if;  
  19. end;  
  20. --調(diào)用這個(gè)觸發(fā)器  
  21. update emp2 set sal = sal*2 where deptno = 30; 

---更改有依賴關(guān)系的表的字段值的建立的一個(gè)觸發(fā)器

  1. create or replace trigger trip_change  
  2. after update on dept2  
  3. for each row  
  4. begin 
  5. update emp2 set deptno = :NEW.deptno where deptno = :OLD.deptno;  
  6. end;   
  7. ---觸發(fā)這個(gè)觸發(fā)器  
  8. update dept2 set deptno = 99 where deptno = 10; 

---樹(shù)狀結(jié)構(gòu)的存儲(chǔ)與展示

  1. drop table article;  
  2. create table article  
  3. (  
  4. id number primary key,  
  5. cont varchar2(4000),  
  6. pid number,  
  7. isleaf number(1),--0 代表非葉子節(jié)點(diǎn),1 代表葉子節(jié)點(diǎn)  
  8. alevel number(2)  
  9. );  
  10. insert into article values(1,'螞蟻大戰(zhàn)大象',0,0,0);  
  11. insert into article values(2,'螞蟻大戰(zhàn)大象',1,0,1);  
  12. insert into article values(3,'螞蟻大戰(zhàn)大象',2,1,2);  
  13. insert into article values(4,'螞蟻大戰(zhàn)大象',2,0,2);  
  14. insert into article values(5,'螞蟻大戰(zhàn)大象',4,1,3);  
  15. insert into article values(6,'螞蟻大戰(zhàn)大象',1,0,1);  
  16. insert into article values(7,'螞蟻大戰(zhàn)大象',6,1,2);  
  17. insert into article values(8,'螞蟻大戰(zhàn)大象',6,1,2);  
  18. insert into article values(9,'螞蟻大戰(zhàn)大象',2,0,2);  
  19. insert into article values(10,'螞蟻大戰(zhàn)大象',9,1,3);  
  20. commit

---用存儲(chǔ)過(guò)程展示樹(shù)狀結(jié)構(gòu)(用遞歸的方式實(shí)現(xiàn))

  1. create or replace procedure p_tree(v_pid article.pid%type, v_level binary_integer) is 
  2. cursor c is select * from article where pid = v_pid;  
  3. v_preStr varchar2(1024) :='';  
  4. begin 
  5. for i in 1..v_level loop  
  6. v_preStr := v_preStr || '****';  
  7. end loop;  
  8. for v_article in c loop  
  9. dbms_output.put_line(v_preStr || v_article.cont);  
  10. if(v_article.isleaf = 0) then 
  11. p_tree(v_article.id, v_level + 1);  
  12. end if;  
  13. end loop;  
  14. end;   
  15. --執(zhí)行這個(gè)存儲(chǔ)過(guò)程  
  16. exec p_tree(0,0);   
  17. --SQL> exec p_tree(0,0);  
  18. --螞蟻大戰(zhàn)大象  
  19. --****螞蟻大戰(zhàn)大象  
  20. --********螞蟻大戰(zhàn)大象  
  21. --********螞蟻大戰(zhàn)大象  
  22. --************螞蟻大戰(zhàn)大象  
  23. --********螞蟻大戰(zhàn)大象  
  24. --************螞蟻大戰(zhàn)大象  
  25. --****螞蟻大戰(zhàn)大象  
  26. --********螞蟻大戰(zhàn)大象                        
  27. --********螞蟻大戰(zhàn)大象                        
  28. --PL/SQL 過(guò)程已成功完成。  

【編輯推薦】

  1. Oracle 數(shù)據(jù)集成的實(shí)際解決方案
  2. 對(duì)Oracle Raw常見(jiàn)類型的解釋
  3. Oracle歸檔模式的相關(guān)切換的實(shí)際操作步驟
  4. Oracle數(shù)據(jù)庫(kù)的啟用與關(guān)閉的歸檔模式
  5. Oracle修改字段類型2種方案介紹
責(zé)任編輯:彭凡 來(lái)源: Chinaunix
相關(guān)推薦

2024-11-01 08:34:18

Spring配置@Bean

2014-11-20 14:39:12

網(wǎng)絡(luò)傳輸

2009-10-10 16:57:33

布線工藝要求

2020-11-20 14:16:20

Python開(kāi)發(fā)表格

2015-01-15 09:21:24

TCP窗口

2025-05-28 08:15:00

字符集編碼字符

2020-11-06 09:05:18

前端web開(kāi)發(fā)

2017-04-12 10:40:34

公有云

2022-03-31 15:17:04

JavaSocketServlet容器

2017-02-27 21:30:29

數(shù)據(jù)中心光纖電纜

2020-12-07 10:38:13

Python開(kāi)發(fā)語(yǔ)言

2020-10-21 09:18:50

程序員前端Github

2011-07-22 16:43:37

java

2023-06-28 11:58:00

2011-11-28 09:26:57

2012-05-09 17:32:42

云管理平臺(tái)架構(gòu)

2025-11-19 11:10:05

2010-06-28 21:33:17

eMule協(xié)議

2022-09-09 16:38:09

Linux

2017-01-15 17:15:27

Java基本功能
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

成人自拍偷拍| 久久精品夜夜夜夜夜久久| 国产免费成人在线| av片在线免费观看| 国产乱一区二区| 2019av中文字幕| 四虎影视一区二区| 91亚洲精品视频在线观看| 欧美性猛交视频| 国产日韩欧美大片| 亚洲欧美日韩精品永久在线| 另类综合日韩欧美亚洲| 午夜精品免费视频| 特级西西人体高清大胆| 国产精品国产| 欧美一区二区三区精品| 欧美三级午夜理伦三级| 久久免费电影| 国产精品日韩成人| 精品一区二区三区香蕉蜜桃| 亚洲电影免费观看高清完整版在线| 无码精品国产一区二区三区免费| 成人在线app| 亚洲国产精华液网站w| 国产一区二区久久久| 国产又粗又猛又爽| 日本不卡中文字幕| 欧美性视频精品| 青青草偷拍视频| 日韩国产综合| 亚洲欧美色婷婷| 亚洲黄色小说在线观看| 日韩成人在线电影| 色就色 综合激情| 777777av| 黑人另类精品××××性爽| 亚洲人成精品久久久久| 欧美久久在线| 毛片免费在线播放| 91在线国产福利| 国产精品国产三级欧美二区| 国产视频一区二区三区四区五区| 美国av一区二区| 国产精品高潮呻吟久久av黑人| 国产一级片毛片| 国产日韩1区| 6080yy精品一区二区三区| 久久综合亚洲色hezyo国产| 永久亚洲成a人片777777| 日韩在线观看网站| 美女100%无挡| 国产精品羞羞答答在线观看| 亚洲摸下面视频| 久久中文字幕人妻| 婷婷综合一区| 亚洲偷欧美偷国内偷| 精品无码人妻一区| 国产成人精品一区二区免费看京| 亚洲欧洲国产精品| 欧美老女人性生活视频| av一区二区在线观看| 伊人久久久久久久久久久| xxxxx在线观看| 国产日产精品_国产精品毛片| 亚洲人av在线影院| 亚洲人成人无码网www国产| 国产一卡不卡| 色99之美女主播在线视频| 久久人妻无码aⅴ毛片a片app| 你懂的视频一区二区| 久久91亚洲人成电影网站 | 亚洲国产伊人| 制服丝袜在线91| 男人女人拔萝卜视频| xvideos.蜜桃一区二区| 亚洲国产另类 国产精品国产免费| 国模私拍在线观看| 久9久9色综合| 菠萝蜜影院一区二区免费| 亚洲最大的黄色网址| 国内精品久久久久久久影视蜜臀| 91国产美女在线观看| 亚洲黄色激情视频| 麻豆专区一区二区三区四区五区| 91精品国产综合久久久久久丝袜| 亚洲精品国产一区二| www国产精品av| 亚洲日本精品一区| 国内老司机av在线| 91久久精品网| 男人女人拔萝卜视频| 香蕉久久精品| 久久国产精品久久久久| 99精品视频99| 久久精品国产久精国产爱| ts人妖另类在线| youjizz在线播放| 亚洲免费视频中文字幕| 妺妺窝人体色www在线小说| 精品久久福利| 亚洲国产一区自拍| 亚洲黄色网址大全| 亚洲日本久久| 91亚洲精品久久久久久久久久久久| 日本黄色免费视频| 国产精品私人自拍| 黄页免费在线观看视频| 本网站久久精品| 亚洲国产精品电影在线观看| 欧美88888| 久久aⅴ乱码一区二区三区| 亚洲综合在线小说| 国产黄色免费在线观看| 亚洲一区av在线| 中文字幕国产免费| 亚洲ab电影| 色综合天天综合网国产成人网 | 欧美精品一二三| 97人妻天天摸天天爽天天| 91视频久久| 日韩免费在线观看视频| 亚洲精品无amm毛片| 国产精品狼人久久影院观看方式| 亚洲熟妇av日韩熟妇在线| 欧美a在线观看| 中文字幕亚洲欧美日韩2019| 成人午夜视频精品一区| 国产精品888| 翔田千里亚洲一二三区| 成人免费无遮挡| 精品成人私密视频| 久久黄色免费视频| 激情五月激情综合网| 四虎一区二区| 精品网站在线| 亚洲区一区二区| 亚洲欧美一区二区三区在线观看| 北条麻妃国产九九精品视频| 91免费版看片| 精品国产欧美| 久久影院中文字幕| 6—12呦国产精品| 国产精品全国免费观看高清| 91蝌蚪视频在线观看| 香蕉久久夜色精品国产更新时间| 91精品国产一区| 网站黄在线观看| 亚洲国产精品久久艾草纯爱| 欧美xxxx黑人| 国产主播精品| 国产一区免费观看| 欧美男人天堂| 亚洲美女激情视频| 特级做a爱片免费69| 久久综合狠狠综合久久综合88| 免费成人在线视频网站| 杨幂一区二区三区免费看视频| 欧洲美女免费图片一区| 国产资源在线看| 欧美三级视频在线观看| 91大神福利视频| 国产精品888| 无码专区aaaaaa免费视频| 欧美韩一区二区| 日韩av免费一区| av在线免费观看网站| 欧美日韩精品电影| 青青青在线免费观看| 国产不卡一区视频| 日韩小视频在线播放| 美女毛片一区二区三区四区| 国产精品亚洲自拍| 99热国产在线中文| 亚洲第一色在线| 性色av免费观看| 国产精品久久久一区麻豆最新章节| 五月婷婷之婷婷| 国内揄拍国内精品久久| 久久久久久久久久久久久9999| 国产免费不卡| 日韩视频欧美视频| 天堂中文网在线| 欧美日韩日日骚| 美女毛片在线观看| 久久久久久久久久久久久夜| 国产九九热视频| 国产精品大片免费观看| 欧美激情论坛| 日韩精品一级| 欧美最猛性xxxx| 国产在线高清理伦片a| 亚洲国产欧美一区二区丝袜黑人| 免费观看日批视频| 一区二区三区中文字幕精品精品 | 国产色产综合色产在线视频| 性欧美在线视频| 99亚洲一区二区| 永久域名在线精品| 小嫩嫩12欧美| av噜噜色噜噜久久| 日韩精品一区二区三区av| 欧美大片在线免费观看| 黄色av网址在线免费观看| 日韩一区二区精品葵司在线| 日韩精品久久久久久免费| 日韩一区欧美一区| 五级黄高潮片90分钟视频| 国产精品系列在线观看| 国产一级特黄a大片免费| 欧美日韩日本国产亚洲在线| 婷婷久久伊人| 人妖一区二区三区| 91九色露脸| 久久爱.com| 日本欧美一二三区| 丁香花电影在线观看完整版| 久久精品亚洲热| 成人在线免费观看| 亚洲免费视频一区二区| 蜜臀久久精品久久久久| 欧美一区二区不卡视频| 在线中文字幕网站| 色婷婷精品久久二区二区蜜臂av| 国产亚洲第一页| 亚洲靠逼com| 久艹在线观看视频| 欧美激情一区二区在线| 偷拍女澡堂一区二区三区| 成人亚洲精品久久久久软件| 在线免费黄色小视频| 久久国产精品99精品国产| 黄色一级一级片| 免费在线观看成人av| 精品国产av无码一区二区三区 | 国产精品无码人妻一区二区在线| 一区二区三区午夜视频| 一本一生久久a久久精品综合蜜 | 国产精品一卡二卡| 中文字幕亚洲影院| 久久精品国产99| 日本在线播放一区二区| 精品一区二区在线免费观看| 91插插插插插插插插| 日韩经典一区二区| 无码精品国产一区二区三区免费| 性伦欧美刺激片在线观看| 国产免费毛卡片| 久久婷婷丁香| 日韩精品无码一区二区三区免费| 久久久久久网| 99草草国产熟女视频在线| 久久人人精品| 欧美大尺度做爰床戏| 老司机免费视频一区二区三区| 亚洲国产精品三区| 久久99久久精品| theporn国产精品| 国产不卡高清在线观看视频| 亚洲黄色小说在线观看| 99久久夜色精品国产网站| 中出视频在线观看| 国产日韩欧美制服另类| 亚洲欧美日韩第一页| 亚洲视频狠狠干| 欧美高清视频一区二区三区| 亚洲图片一区二区| 国产99久久久| 欧美日韩精品欧美日韩精品| 国产绿帽一区二区三区| 日韩精品在线网站| 午夜福利一区二区三区| 亚洲视频第一页| 免费a在线看| 欧美精品xxx| 在线手机中文字幕| 国产精品视频中文字幕91| 在线欧美激情| 国产欧美一区二区视频| 欧美日韩国产传媒| 9l视频自拍9l视频自拍| 99精品热视频只有精品10| 97公开免费视频| 国产一区二区不卡| 亚洲欧美日本一区| 国产精品免费视频网站| 国产亚洲小视频| 在线亚洲+欧美+日本专区| 国产又黄又粗又硬| 日韩电影免费观看中文字幕| av资源种子在线观看| 久久99国产精品久久久久久久久| 欧美日韩在线观看首页| 国产裸体写真av一区二区| 大奶一区二区三区| 日韩中文不卡| 亚洲国产午夜| 在线看免费毛片| 91在线视频播放地址| 多男操一女视频| 色婷婷一区二区三区四区| 国产女同91疯狂高潮互磨| 精品香蕉一区二区三区| 二区在线播放| 国产精品v片在线观看不卡| 亚洲91网站| 午夜精品一区二区在线观看的 | 日韩av黄色在线| 天天爱天天做天天操| 另类激情亚洲| 欧洲成人午夜精品无码区久久| 国产午夜三级一区二区三| 国产一级片免费看| 91精品国产全国免费观看| 男操女在线观看| 久久久久久成人| 91精品国产一区二区在线观看 | 白丝校花扒腿让我c| 亚洲国产精品高清| 毛片视频网站在线观看| 欧美一级欧美一级在线播放| 98在线视频| 国产成人97精品免费看片| 草莓视频一区二区三区| 91九色国产ts另类人妖| 免费国产亚洲视频| 一道本在线观看| 精品久久久久久国产91| 亚洲国产欧美另类| 欧美成人精品在线观看| 国产精品**亚洲精品| 亚洲欧洲国产日韩精品| 丝袜a∨在线一区二区三区不卡| 免费黄色三级网站| 亚洲成人激情av| 亚洲国产福利视频| 欧美成人中文字幕在线| 精品视频一二| 黄色一级视频播放| 韩国一区二区视频| 国产视频精品免费| 欧美精选在线播放| 成人国产免费电影| 亚洲一区二区在线播放| 亚洲国产不卡| 久久精品亚洲天堂| 综合激情成人伊人| 一级片免费观看视频| 久久视频在线直播| 精品一区二区三区四区五区| 佐佐木明希av| 国产精品888| 国产精彩视频在线| 亚洲国产私拍精品国模在线观看| 国产精品电影| 欧美大陆一区二区| 巨乳诱惑日韩免费av| 成人做爰69片免网站| 欧美精品乱人伦久久久久久| 麻豆网站在线看| 99在线观看视频| 一二三区精品| 欧美熟妇激情一区二区三区| 精品视频1区2区| 国产在线激情视频| 国产精品18毛片一区二区| 亚洲美女网站| 娇妻被老王脔到高潮失禁视频| 欧美日韩电影一区| 欧美日韩经典丝袜| 精品国产一区二区三区麻豆免费观看完整版 | 成人h动漫精品一区二区| 国产精品黄色大片| 色综合影院在线| 亚洲亚洲一区二区三区| 日韩中文字幕在线视频观看| 国产亚洲成年网址在线观看| 91精品人妻一区二区三区果冻| 久99久在线视频| 无码日韩精品一区二区免费| 欧美婷婷精品激情| 亚洲综合免费观看高清完整版在线 | 色一情一乱一伦一区二区三欧美 | www.久久国产| 91麻豆精品久久久久蜜臀| 波多野结衣中文字幕久久| 欧美日韩在线精品| 国产精品99久久久久久似苏梦涵 | 鲁鲁视频www一区二区| 日本伊人精品一区二区三区观看方式| 国产极品国产极品| 亚洲老头老太hd| 精品午夜视频| 黄色一级二级三级| 亚洲午夜久久久久久久久久久| 高h视频在线| 精品国产区在线| 国产一区二区三区在线观看免费 | 久久99九九| 激情成人午夜视频| 高清乱码免费看污|