freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

韓順平oracle0-30教學(xué)筆記-文庫吧

2025-04-15 22:51 本頁面


【正文】 SET NLS_DATE_FORMAT =39。yyyymmdd39。修改后,可以用我們熟悉的格式添加日期類型: INSERT INTO student VALUES (39。A00239。, 39。MIKE39。, 39。男39。, 39。1905050639。, 10)。 n 插入部分字段INSERT INTO student(xh, xm, sex) VALUES (39。A00339。, 39。JOHN39。, 39。女39。)。 n 插入空值INSERT INTO student(xh, xm, sex, birthday) VALUES (39。A00439。, 39。MARTIN39。, 39。男39。, null)。問題來了,如果你要查詢student表里birthday為null的記錄,怎么寫sql呢?錯(cuò)誤寫法:select * from student where birthday = null。正確寫法:select * from student where birthday is null。如果要查詢birthday不為null,則應(yīng)該這樣寫: select * from student where birthday is not null。修改數(shù)據(jù)n 修改一個(gè)字段UPDATE student SET sex = 39。女39。 WHERE xh = 39。A00139。 n 修改多個(gè)字段UPDATE student SET sex = 39。男39。, birthday = 39。1984040139。 WHERE xh = 39。A00139。修改含有null值的數(shù)據(jù)不要用 = null 而是用 is null; SELECT * FROM student WHERE birthday IS null。n 刪除數(shù)據(jù)DELETE FROM student。刪除所有記錄,表結(jié)構(gòu)還在,寫日志,可以恢復(fù)的,速度慢。Delete 的數(shù)據(jù)可以恢復(fù)。savepoint a。 創(chuàng)建保存點(diǎn)DELETE FROM student。 rollback to a。 恢復(fù)到保存點(diǎn)一個(gè)有經(jīng)驗(yàn)的DBA,在確保完成無誤的情況下要定期創(chuàng)建還原點(diǎn)。DROP TABLE student。 刪除表的結(jié)構(gòu)和數(shù)據(jù); delete from student WHERE xh = 39。A00139。 刪除一條記錄; truncate TABLE student。 刪除表中的所有記錄,表結(jié)構(gòu)還在,不寫日志,無法找回刪除的記錄,速度快。5. oracle表查詢(1)n 介紹在我們講解的過程中我們利用scott用戶存在的幾張表(emp,dept)為大家演示如何使用select語句,select語句在軟件編程中 非常有用,希望大家好好的掌握。emp 雇員表 clerk 普員工salesman 銷售manager 經(jīng)理analyst 分析師president 總裁mgr 上級(jí)的編號(hào)hiredate 入職時(shí)間sal 月工資m 獎(jiǎng)金deptno 部門dept部門表deptno 部門編號(hào)accounting 財(cái)務(wù)部research 研發(fā)部operations 業(yè)務(wù)部loc 部門所在地點(diǎn)salgrade 工資級(jí)別grade 級(jí)別losal 最低工資hisal 最高工資簡(jiǎn)單的查詢語句n 查看表結(jié)構(gòu)DESC emp。 n 查詢所有列SELECT * FROM dept。切忌動(dòng)不動(dòng)就用select *SET TIMING ON。 打開顯示操作時(shí)間的開關(guān),在下面顯示查詢時(shí)間。CREATE TABLE users(userId VARCHAR2(10), uName VARCHAR2 (20), uPassw VARCHAR2(30))。 INSERT INTO users VALUES(39。a000139。, 39。啊啊啊啊39。, 39。aaaaaaaaaaaaaaaaaaaaaaa39。)。 從自己復(fù)制,加大數(shù)據(jù)量 大概幾萬行就可以了 可以用來測(cè)試sql語句執(zhí)行效率INSERT INTO users (userId,UNAME,UPASSW) SELECT * FROM users。 SELECT COUNT (*) FROM users。統(tǒng)計(jì)行數(shù)n 查詢指定列SELECT ename, sal, job, deptno FROM emp。 n 如何取消重復(fù)行DISTINCTSELECT DISTINCT deptno, job FROM emp。?查詢SMITH所在部門,工作,薪水SELECT deptno,job,sal FROM emp WHERE ename = 39。SMITH39。注意:oracle對(duì)內(nèi)容的大小寫是區(qū)分的,所以ename=39。SMITH39。和ename=39。smith39。是不同的n 使用算術(shù)表達(dá)式 nvl null問題:如何顯示每個(gè)雇員的年工資?SELECT sal*13+nvl(m, 0)*13 年薪 , ename, m FROM emp。 n 使用列的別名SELECT ename 姓名, sal*12 AS 年收入 FROM emp。 n 如何處理null值使用nvl函數(shù)來處理n 如何連接字符串(||)SELECT ename || 39。 is a 39。 || job FROM emp。 n 使用where子句問題:如何顯示工資高于3000的 員工? SELECT * FROM emp WHERE sal 3000。問題:? SELECT ename,hiredate FROM emp WHERE hiredate 39。11月198239。問題:如何顯示工資在2000到3000的員工? SELECT ename,sal FROM emp WHERE sal =2000 AND sal = 3000。n 如何使用like操作符 %:表示0到多個(gè)字符 _:表示任意單個(gè)字符問題:如何顯示首字符為S的員工姓名和工資?SELECT ename,sal FROM emp WHERE ename like 39。S%39。如何顯示第三個(gè)字符為大寫O的所有員工的姓名和工資?SELECT ename,sal FROM emp WHERE ename like 39。__O%39。 n 在where條件中使用in問題:如何顯示empno為7844, 7839,123,456 的雇員情況?SELECT * FROM emp WHERE empno in (7844, 7839,123,456)。 n 使用is null的操作符問題:如何顯示沒有上級(jí)的雇員的情況?錯(cuò)誤寫法:select * from emp where mgr = 39。39。正確寫法:SELECT * FROM emp WHERE mgr is null。 6. oracle表查詢(2)n 使用邏輯操作符號(hào)問題:查詢工資高于500或者是崗位為MANAGER的雇員,同時(shí)還要滿足他們的姓名首字母為大寫的J? SELECT * FROM emp WHERE (sal 500 or job = 39。MANAGER39。) and ename LIKE 39。J%39。 n 使用order by 字句 默認(rèn)asc問題:如何按照工資的從低到高的順序顯示雇員的信息? SELECT * FROM emp ORDER by sal。問題:按照部門號(hào)升序而雇員的工資降序排列SELECT * FROM emp ORDER by deptno, sal DESC。 n 使用列的別名排序問題:按年薪排序select ename, (sal+nvl(m,0))*12 年薪 from emp order by 年薪 asc。別名需要使用“”號(hào)圈中,英文不需要“”號(hào)n 分頁查詢等學(xué)了子查詢?cè)僬f吧。Clear 清屏命令oracle表復(fù)雜查詢n 說明在實(shí)際應(yīng)用中經(jīng)常需要執(zhí)行復(fù)雜的數(shù)據(jù)統(tǒng)計(jì),經(jīng)常需要顯示多張表的數(shù)據(jù),現(xiàn)在我們給大家介紹較為復(fù)雜的select語句n數(shù)據(jù)分組 ——max,min, avg, sum, count問題:如何顯示所有員工中最高工資和最低工資?SELECT MAX(sal),min(sal) FROM emp e。 最高工資那個(gè)人是誰?錯(cuò)誤寫法:select ename, sal from emp where sal=max(sal)。正確寫法:select ename, sal from emp where sal=(select max(sal) from emp)。注意:select ename, max(sal) from emp。這語句執(zhí)行的時(shí)候會(huì)報(bào)錯(cuò),說ORA00937:非單組分組函數(shù)。因?yàn)閙ax是分組函數(shù),而ename不是分組函數(shù).......但是select min(sal), max(sal) from emp。這句是可以執(zhí)行的。因?yàn)閙in和max都是分組函數(shù),就是說:如果列里面有一個(gè)分組函數(shù),其它的都必須是分組函數(shù),否則就出錯(cuò)。這是語法規(guī)定的問題:如何顯示所有員工的平均工資和工資總和?問題:如何計(jì)算總共有多少員工問題:如何擴(kuò)展要求:查詢最高工資員工的名字,工作崗位SELECT ename, job, sal FROM emp e where sal = (SELECT MAX(sal) FROM emp)。顯示工資高于平均工資的員工信息SELECT * FROM emp e where sal (SELECT AVG(sal) FROM emp)。 n group by 和 having子句group by用于對(duì)查詢的結(jié)果分組統(tǒng)計(jì),having子句用于限制分組顯示結(jié)果。問題:如何顯示每個(gè)部門的平均工資和最高工資?SELECT AVG(sal), MAX(sal), deptno FROM emp GROUP by deptno。(注意:這里暗藏了一點(diǎn),如果你要分組查詢的話,分組的字段deptno一定要出現(xiàn)在查詢的列表里面,否則會(huì)報(bào)錯(cuò)。因?yàn)榉纸M的字段都不出現(xiàn)的話, 就沒辦法分組了)問題:顯示每個(gè)部門的每種崗位的平均工資和最低工資? SELECT min(sal), AVG(sal), deptno, job FROM emp GROUP by deptno, job。問題:顯示平均工資低于2000的部門號(hào)和它的平均工資?SELECT AVG(sal), MAX(sal), deptno FROM emp GROUP by deptno having AVG(sal) 2000。 n 對(duì)數(shù)據(jù)分組的總結(jié)1 分組函數(shù)只能出現(xiàn)在選擇列表、having、order by子句中(不能出現(xiàn)在where中) 2 如果在select語句中同時(shí)包含有g(shù)roup by, having, order by 那么它們的順序是group by, having, order by 3 在選擇列中如果有列、表達(dá)式和分組函數(shù),那么這些列和表達(dá)式必須有一個(gè)出現(xiàn)在group by 子句中,否則就會(huì)出錯(cuò)。如SELECT deptno, AVG(sal), MAX(sal) FROM emp GROUP by deptno HAVING AVG(sal) 2000。這里deptno就一定要出現(xiàn)在group by 中多表查詢n 說明多表查詢是指基于兩個(gè)和兩個(gè)以上的表或是視圖的查詢。在實(shí)際應(yīng)用中,查詢單個(gè)表可能不能滿足你的需求,(如顯示sales部門位置和其員工的姓 名),這種情況下需要使用到(dept表和emp表)問題:顯示雇員名,雇員工資及所在部門的名字【笛卡爾集】?規(guī)定:多表查詢的條件是 至少不能少于 表的個(gè)數(shù)1 才能排除笛卡爾集(如果有N張表聯(lián)合查詢,必須得有N1個(gè)條件,才能避免笛卡爾集合)SELECT , , FROM emp e, dept d WHERE = 。問題:顯示部門號(hào)為10的部門名、員工名和工資? SELECT , , FROM emp e, dept d WHERE = and = 10。問題:顯示各個(gè)員工的姓名,工資及工資的級(jí)別?先看salgrade的表結(jié)構(gòu)和記錄SQLselect * from salgrade。GRADE LOSAL HISAL 1 700 200 2 1201 1400 3 1401 2000 4 2001 3000 5 3001 9999 SELECT e. ename, , FROM emp e, salgrade s WHERE BETWEEN AND 。擴(kuò)展要求:?jiǎn)栴}:顯示雇員名,雇員工資及所在部門的名字,并按部門排序? SELECT , , FROM emp e, dept d WHERE = ORDER by 。(注意:如果用group by,)n 自連接自連接是指在同一張表的連接查詢問題:顯示某個(gè)員工的上級(jí)領(lǐng)導(dǎo)的姓名?比如顯示員工‘FORD’的上級(jí)SELECT ,
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1