日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

python針對Oracle常見查詢操作實(shí)例分析

瀏覽:33日期:2022-07-26 17:54:51

本文實(shí)例講述了python針對Oracle常見查詢操作。分享給大家供大家參考,具體如下:

1.子查詢(難):

當(dāng)進(jìn)行查詢的時(shí)候,發(fā)現(xiàn)需要的數(shù)據(jù)信息不明確,需要先通過另一個(gè)查詢得到,

此查詢稱為子查詢;

執(zhí)行順序:先執(zhí)行子查詢得到結(jié)果以后返回給主查詢

組成部分:

1).主查詢部分

2).子查詢部分

【注意事項(xiàng)】:

子查詢一定需要被定義/包裹在小括號內(nèi)部,可以認(rèn)為是顯示的提升了代碼執(zhí)行的優(yōu)先級

需求1:

查詢薪資比Abel的高的有誰?

分析:

①.先查詢出Abel的薪資是多少?

②.將過濾條件定義為>①,然后進(jìn)行查詢得到最終需要的結(jié)果

代碼實(shí)現(xiàn):

select last_name,salaryfrom employeeswhere salary > (select salary from employeeswhere last_name = ’Abel’);

需求2:

查詢job_id與141號員工相同,salary比143號員工多的員工的姓名,job_id和salary?

代碼實(shí)現(xiàn):

select last_name,job_id,salaryfrom employeeswhere job_id = (select job_idfrom employeeswhere employee_id = 141)and salary > (select salaryfrom employeeswhere employee_id = 143);

課堂練習(xí):

1).返回公司工資最少的員工的employee_id,job_id和salary

select employee_id,job_id,salaryfrom employeeswhere salary = (select min(salary)from employees);

2).查詢平均工資高于公司平均工資的部門有哪些

select department_id,avg(salary)from employeesgroup by department_idhaving avg(salary) > (select avg(salary)from employees)order by department_id desc;

3).查詢最低工資大于20號部門最低工資的部門id和最低工資

select department_id,min(salary)from employeeswhere department_id is not nullgroup by department_idhaving min(salary) > (select min(salary)from employeeshaving department_id = 20);

4).返回其它職位中比job_id為’IT_PROG’中最低工資低的員工的員工號,姓名,job_id以及salary

select employee_id,last_name,job_id,salaryfrom employeeswhere salary < (select min(salary)from employeeswhere job_id = ’IT_PROG’);

2.多表查詢/多表聯(lián)查

概念:

使用場景,如果一條select語句中需要查詢的列遍布多張數(shù)據(jù)表,

那么我們就必須使用多表查詢了!!

分類:

等值連接和非等值連接

對于等值連接分方向:

1).內(nèi)連接:返回多張表中共同滿足的數(shù)據(jù),取交集

2).外連接(左、右、滿):返回內(nèi)連接數(shù)據(jù)的同時(shí)還會(huì)繼續(xù)返回某張表中不匹配的一些記錄數(shù)

3).自連接:從始至終都是一張表,模擬一張表派生為兩張(它們的結(jié)構(gòu)式一模一樣的),自己連自己

等值連接中的內(nèi)連接:

需求:

查詢所有員工的員工號、員工姓名以及部門的名字?

select employee_id,last_name,department_namefrom employees,departments;

【注意】

以上查詢得到了2889條記錄,很多都是沒有用的數(shù)據(jù)(臟數(shù)據(jù)),

出現(xiàn)的原因是:沒有添加有效的連接條件導(dǎo)致的,

而這種現(xiàn)象我們稱為笛卡爾集現(xiàn)象;

我們?nèi)蘸蟮膶W(xué)習(xí)和開發(fā)環(huán)境中是絕對要避免的!!

如何保證我們之后的多表查詢絕對不會(huì)出現(xiàn)笛卡爾集現(xiàn)象?

1).不能不寫連接條件

2).連接條件必須是有效的

思考:如何修改上述的代碼?

代碼實(shí)現(xiàn)如下:

select employee_id,last_name,department_namefrom employees,departmentswhere employees.department_id = departments.department_id;

需求:使用內(nèi)連接來實(shí)現(xiàn)

查詢員工的員工號、姓名、部門號、部門名字?

select employee_id,last_name,department_id,department_namefrom employees,departmentswhere employees.department_id = departments.department_id;

以上代碼出錯(cuò)了,出錯(cuò)原因:

因?yàn)閷τ赿epartment_id這個(gè)列在employees和departments兩張表中都存在,

所以需要顯示的告訴編譯器,我從哪張表中獲取數(shù)據(jù)內(nèi)容的!

修改代碼如下:

select employee_id,last_name,departments.department_id,department_namefrom employees,departmentswhere employees.department_id = departments.department_id;select employee_id,last_name,employees.department_id,department_namefrom employees,departmentswhere employees.department_id = departments.department_id;

思考:沒有重復(fù)的列可以使用名字.的形式來定義嗎?---> 可以的

select employee.employee_id,employee.last_name,employees.department_id,departments.department_namefrom employees,departmentswhere employees.department_id = departments.department_id;

上述代碼運(yùn)行以及結(jié)果方面不存在問題,但是在代碼量上比較冗余!!我們可以使用如下的方式解決...

給名字起別名的方式:

修改代碼如下:

select e.employee_id,e.last_name,e.department_id,d.department_namefrom employees e,departments dwhere e.department_id = d.department_id;

總結(jié):對于多表查詢,如果涉及n張表,至少需要有n-1個(gè)連接條件;

非等值連接:

需求:

查詢員工的姓名、薪資以及薪資的等級

select last_name,salary,grade_levelfrom employees,job_gradeswhere salary between lowest_sal and highest_sal;

以上代碼有問題,可以看到各個(gè)人的薪資等級,但是由于沒有追加連接連接,還是出現(xiàn)了笛卡爾集現(xiàn)象;

我們需要慎用!一般之后非等值連接用的比較少,而且必須配合等值連接一起用;

附:Python連接與查詢oracle數(shù)據(jù)庫示例:

import cx_Oracleconn = cx_Oracle.connect(’scott/tiger@localhost:1521/orcl’)cursor = conn.cursor()cursor.execute('SELECT ENAME FROM EMP')row = cursor.fetchone()print row[0],cursor.close()conn.close()

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python常見數(shù)據(jù)庫操作技巧匯總》、《Python編碼操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》

希望本文所述對大家Python程序設(shè)計(jì)有所幫助。

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产传媒在线观看| 伊人久久亚洲热| 精品成人18| 欧美激情麻豆| 国产亚洲电影| 亚洲va久久久噜噜噜久久| 精品视频在线观看网站| 日本va欧美va瓶| 日韩天堂在线| 91成人精品在线| 欧美.日韩.国产.一区.二区| 成人午夜精品| 国产中文在线播放| 久久久久国产精品一区三寸| 国产精品免费精品自在线观看| 另类国产ts人妖高潮视频| 在线天堂资源www在线污| 欧美a级一区二区| 日韩一区网站| 久久午夜视频| 在线中文字幕播放| 悠悠资源网久久精品| 久久亚洲黄色| 午夜精品婷婷| 日韩精品免费视频一区二区三区 | 久久精品国产久精国产| 91成人福利| 欧美不卡高清| 亚洲一区av| 欧美成a人片免费观看久久五月天| 麻豆精品在线| 麻豆国产在线| 91精品在线观看国产| 精品国产精品国产偷麻豆| 国产免费av一区二区三区| 美日韩精品视频| 免费久久99精品国产| 日韩精品一二三区| 99在线精品免费视频九九视| 综合激情网...| 日韩欧美四区| 老牛国内精品亚洲成av人片 | 777久久精品| 国产精品一区二区三区www| 日韩一区二区三区精品| 国产精品白浆| 97精品资源在线观看| av一区在线| 日韩精品一卡| 在线手机中文字幕| 91精品国产自产精品男人的天堂 | 18国产精品| 国产精品流白浆在线观看| 日韩黄色av| 日韩精品诱惑一区?区三区| 久久精品xxxxx| 成人综合一区| 国产模特精品视频久久久久| 中文字幕视频精品一区二区三区| 五月综合激情| 精品国产不卡一区二区| 亚洲深夜福利在线观看| 久久精品影视| 国产伦理一区| 91精品一区国产高清在线gif | 午夜在线视频观看日韩17c| 日本a级不卡| 视频一区免费在线观看| 风间由美中文字幕在线看视频国产欧美| 亚洲午夜久久久久久尤物| 欧美一区91| 水蜜桃精品av一区二区| 视频一区二区三区中文字幕| 999久久久精品国产| 精品国产亚洲一区二区三区在线 | 激情六月综合| 国产suv精品一区二区四区视频 | 国产在线一区不卡| 欧美精品aa| 国产精品久久久久av电视剧| 久久午夜影院| 日韩av影院| 99在线观看免费视频精品观看| 久久不见久久见国语| 亚洲人成网77777色在线播放| 久久成人精品| 视频一区二区欧美| 不卡专区在线| 国产激情久久| 国产乱码精品一区二区三区亚洲人| 日韩1区2区日韩1区2区| 色综合视频一区二区三区日韩 | 91成人超碰| 国产成人精品三级高清久久91| 久久久人人人| 欧美日韩亚洲一区三区| 秋霞国产精品| 91成人小视频| 亚洲欧洲另类| av资源新版天堂在线| 国产 日韩 欧美一区| 视频一区中文字幕国产| 亚洲午夜天堂| 国产精品一页| 黄色亚洲大片免费在线观看| 国产精品嫩草影院在线看| 欧美另类专区| www.九色在线| 国产毛片精品| 日本亚洲不卡| 日韩电影免费在线观看| 69堂免费精品视频在线播放| 激情91久久| 日韩中文影院| 精品国产欧美日韩| 日韩精品一区第一页| zzzwww在线看片免费| 国产精品亚洲片在线播放| 麻豆精品91| 欧美日韩国产综合网| 亚洲精品**中文毛片| 欧美国产免费| 久久免费高清| 香蕉国产精品| 91欧美极品| 欧美gv在线| 国产一区二区三区不卡av| 中文字幕在线视频久| 红桃视频欧美| 久久国产精品免费一区二区三区| 日本一区二区中文字幕| 亚洲精品福利| 日韩精品中文字幕一区二区| 欧美片第1页综合| 国产精品视频一区二区三区综合 | 国产精品mv在线观看| 国产videos久久| 成人羞羞在线观看网站| 黑丝一区二区三区| 性欧美长视频| 青青草伊人久久| 亚洲精品影院在线观看| 麻豆精品久久| 精品国模一区二区三区| 亚洲欧美日韩专区| 国产精品激情| 最新日韩欧美| 国产精品115| 久久要要av| 国产香蕉精品| 亚洲精品国产偷自在线观看| 欧美一区=区三区| 国精品一区二区三区| 国产精品伊人| 亚洲在线观看| 久久久精品久久久久久96| 久久久久久久久丰满| 亚洲欧洲日韩精品在线| 亚洲精品国产嫩草在线观看 | 日本欧美在线| 清纯唯美亚洲综合一区| 日韩三区免费| 免费人成黄页网站在线一区二区| 亚洲激情另类| 亚洲精品中文字幕99999| 四虎8848精品成人免费网站| 亚洲精品一二| 久久亚洲精精品中文字幕| 黑丝一区二区三区| 老司机免费视频一区二区| 亚洲深夜视频| 69堂免费精品视频在线播放| 国产精品xvideos88| 免费在线看一区| 久久久夜精品| 久久国产精品美女| 久久亚洲一区| 国产成人精选| 青青草伊人久久| 免费视频最近日韩| 久久精品国产成人一区二区三区| 亚洲一二三区视频| 欧美日韩国产探花| 美女高潮久久久| 日韩精品午夜视频| 精品一区二区三区亚洲| 中文在线日韩| 午夜久久av| 日本一区二区三区视频在线看| 欧美一区=区| 日韩视频久久| 久久av在线| 日韩影院免费视频| 奶水喷射视频一区| 国内精品福利| 激情综合自拍| 在线日韩欧美| 免费观看不卡av| 黄色日韩在线| 欧美亚洲国产一区|