如何使用oracle查詢,oracle 表查詢

Oracle 的 oracle 表查詢

通過scott用戶下的表來演示如何使用select語句,接下來對emp、dept、salgrade表結構進行解說。

emp 雇員表

字段名稱?? 數據類型?????? 是否為空?? 備注

--------?? -----------?? --------?? --------

EMPNO??? NUMBER(4)???????????????? 員工編號

ENAME??? VARCHAR2(10) Y???????? 員工名稱

JOB??????? VARCHAR2(9)?? Y???????? 職位

MGR?????? NUMBER(4)?????? Y???????? 上級的編號

HIREDATE DATE??????????? ?Y???????? 入職日期

SAL???????? NUMBER(7,2)?? Y???????? 月工資

COMM????? NUMBER(7,2)?? Y???????? 獎金

DEPTNO???NUMBER(2)???? ?Y???????? 所屬部門

-------------------------------------------

job字段:

clerk 普員工

salesman 銷售

manager 經理

analyst 分析師

president 總裁

dept 部門表

字段名稱??? 數據類型????????? 是否為空?? 備注

--------??? -----------????? --------?? --------

DEPTNO?? NUMBER(2)??????????????????? 部門編號

DNAME??? VARCHAR2(14)? ? Y????????? 部門名稱

LOC???????? VARCHAR2(13)?? Y????????? 部門所在地點

-------------------------------------------

DNAME字段:

accounting 財務部

research 研發部

operations 業務部

salgrade 工資級別表

字段名稱? 數據類型?? 是否為空? 備注

--------? ---------? --------? --------

GRADE?? NUMBER???? Y???????? 級別

LOSAL??? NUMBER???? Y???????? 最低工資

HISAL???? NUMBER???? Y???????? 最高工資

1、查看表結構 desc emp;

2、查詢所有列

select * from dept;

備注:切忌動不動就用select *,使用*效率比較低,特別在大表中要注意。

3、set timing on/off;

打開顯示操作時間的開關,在底部顯示操作時間。

eg、sql> insert into tb_stu values('0001', 'zhangsan', 24);

1 row inserted

executed in 0.015 seconds

4、insert into...select...表復制語句 語法:insert into table2(field1,field2,...) select value1,value2,... from table1

--創建tb_dept表

create table tb_dept

(

deptno number(4) not null,

dname? varchar2(14),

loc??? varchar2(13)

)

--添加主鍵約束

alter table tb_dept add constraint tb_dept primary key (deptno);

--insert into...select...用法 insert into tb_dept (deptno, dname, loc) select a.deptno, a.dname, a.loc from dept a;

5、統計 select count (*) from emp;

6、查詢指定列 select ename, sal, job, deptno from emp;

7、如何取消重復行distinct select distinct deptno, job from emp;

8、查詢smith所在部門,工作,薪水 select deptno, job, sal from emp where ename = 'smith'; 注意:oracle對內容的大小寫是敏感的,所以ename='smith'和ename='smith'是不同的

9、nvl函數

格式為:nvl(string1, replace_with)

功能:如果string1為null,則nvl函數返回replace_with的值,否則返回string1的值。

注意事項:string1和replace_with必須為同一數據類型,除非顯示的使用to_char函數。

eg、如何顯示每個雇員的年工資?

select sal*13+nvl(comm, 0)*13 "年薪" , ename, comm from emp;

10、使用列的別名 select ename "姓名", sal*12 as "年收入" from emp;

11、如何處理null值 使用nvl函數來處理

12、如何連接字符串(||) select ename || ' is a ' || job from emp;

13、使用where子句 問題:如何顯示工資高于3000的員工? select * from emp where sal > 3000; 問題:如何查找1982.1.1后入職的員工? select ename,hiredate from emp where hiredate >'1-1 月-1982'; 問題:如何顯示工資在2000到3000的員工? select ename,sal from emp where sal>=2000 and sal<=3000;

14、如何使用like操作符 %:表示0到多個字符 _:表示任意單個字符 問題:如何顯示首字符為s的員工姓名和工資? select ename,sal from emp where ename like 's%'; 如何顯示第三個字符為大寫o的所有員工的姓名和工資? select ename,sal from emp where ename like '__o%';

15、在where條件中使用in 問題:如何顯示empno為7844,7839,123,456的雇員情況? select * from emp where empno in (7844, 7839, 123, 456);

16、使用is null的操作符 問題:如何顯示沒有上級的雇員的情況? 錯誤寫法:select * from emp where mgr = ''; 正確寫法:select * from emp where mgr is null;

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/279005.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/279005.shtml
英文地址,請注明出處:http://en.pswp.cn/news/279005.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

火狐標簽在中間_在Firefox中保留未使用的標簽

火狐標簽在中間If you have a lot of content heavy webpages open in Firefox, it soon adds up on memory usage. The BarTab extension puts unused tabs on hold and keeps them unloaded until you are ready to access them. 如果您在Firefox中打開了大量內容繁重的網頁&…

[CQOI2012]模擬工廠 題解(搜索+貪心)

[CQOI2012]模擬工廠 題解(搜索貪心) 標簽&#xff1a;題解 閱讀體驗&#xff1a;https://zybuluo.com/Junlier/note/1327574 鏈接題目地址&#xff1a;洛谷P3161 BZOJ P2667 這個題練一練綜合思想還是不錯的。。。&#xff08;然而蒟蒻不會啊&#xff09; 做法 肯定是在能完成某…

上傳文件的input問題以及FormData特性

1.input中除了type"file"還要加上name"file"&#xff0c;否則$_FILES為空&#xff0c;input的name值就是為了區分每一個input的 2.var formdata new FormData($("#form")[0]); 或者var formdata new FormData(document.getElementById("f…

iphone手機備忘錄遷移_如何在iPhone和iPad上使用語音備忘錄

iphone手機備忘錄遷移Whether you’re recording a voice message as a reminder of that million dollar idea or catching a snippet of a new song you know you’ll forget, the iPhone and iPad’s Voice Memos app is the perfect tool. 無論您是錄制語音消息來提醒這一百…

php 執行文件tar打包,利用tar for windows對大量文件進行快速打包

近期將某些網站換服務器&#xff0c;由于網站數量巨大&#xff0c;加上附件和靜態頁&#xff0c;文件數量異常多&#xff0c;考慮先打包然后直接傳過去。起初嘗試用winrar打包&#xff0c;但是發現即使選擇”僅儲存”速度仍然慢到無法接受&#xff0c;后來想到了tar&#xff0c…

DDD~領域事件中使用分布式事務

對于一個聚合來說&#xff0c;它可能會被附加很多事件&#xff0c;這里我們叫它領域事務&#xff0c;因為一個聚會我們可以把它理解成一個領域&#xff0c;一個業務。對于領域事件不清楚的同學可以看看我的這篇文章《DDD~領域事件與事件總線》&#xff0c;里面有詳細的說明&…

如何在PowerPoint中制作打字機或命令行動畫

Adding quirky animations to your Microsoft PowerPoint presentation gives your slideshow a little extra life. Not only will adding a typewriter or command line animation entertain your audience, but it will also keep them focused on the text. 在您的Microsof…

oracle中spool卸數,數據卸載--spool的使用

&#xfeff;&#xfeff;引言在項目中&#xff0c;我們經常會遇到數據的卸載、裝載需求。卸載就是需要將數據從數據庫中導入到文本文件中的需求&#xff0c;這樣的方法有很多&#xff0c;比較常用的就是spool命令。裝載就是需要將數據從文本文件中導入到數據庫中。方法也有很多…

Objective-C中的@property

1.property是什么 Property是聲明屬性的語法&#xff0c;它可以快速方便的為實例變量創建存取器&#xff0c;并允許我們通過點語法使用存取器。 存取器&#xff08;accessor&#xff09;&#xff1a;指用于獲取和設置實例變量的方法。用于獲取實例變量值的存取器是getter&#…

Linux基礎命令---findfs

findfs 查找指定卷標或者UUID的文件系統對應的設備文件。findfs將搜索系統中的磁盤&#xff0c;尋找具有標簽匹配標簽或與UUID相等的文件系統。如果找到文件系統&#xff0c;文件系統的設備名稱將打印在stdout上。 此命令的適用范圍&#xff1a;RedHat、RHEL、Ubuntu、CentOS、…

canvas 平滑運動_什么是電視上的運動平滑?人們為什么討厭它?

canvas 平滑運動Willy Barton/Shutterstock.com威利巴頓/Shutterstock.comIf you’ve just bought a new TV, you might be wondering why everything you watch feels eerily sped up and smooth, like you’re watching a live broadcast all the time. You’re not imaginin…

linux guard什么進程,使用linux系統性能監控工具KSysguard監控遠端主機介紹

KDE System Guard默認的窗口前端圖形界面使用傳感器(sensors)獲得要顯示的信息。傳感器返回的可以是一個簡單的數值或更復雜的信息如表格。針對不同的信息類型都提供了一個或多個顯示界面。這些顯示界面被組織在多個工作表中&#xff0c;工作表可以獨立存儲和加載。KSysguard主…

macbook充電_如何判斷MacBook是否正在充電

macbook充電2p2play / Shutterstock2p2play / ShutterstockForgetting to charge your MacBook properly overnight can leave you with a headache in the morning. And if you’re troubleshooting a broken MacBook, checking if it’s able to charge is one way to rule o…

mysql記錄

當沒有用EXISTS引入子查詢時&#xff0c;在選擇列表中只能指定一個表達式轉載于:https://www.cnblogs.com/niuben/p/9920741.html

PIL.Image convert to numpy array

當使用PIL.Image讀取圖像時&#xff0c;如果直接使用numpy.array()轉換會出現錯誤&#xff1a; lst list() for file_name in os.listdir(dir_image):image PIL.Image.open(file_name)lst.append(image) arr numpy.array(lst) 此時&#xff0c;上述最后一行在執行時會出現錯…

NFC服務器在Linux,linux 安裝 libnfc ,打開串口PN532

硬件準備&#xff1a;USB轉串口4針杜邦線PN532模塊IC卡一張(比如門禁卡&#xff0c;飯卡等)軟件準備&#xff1a;Ubuntu 物理機一臺能夠訪問互聯網1&#xff0c;將PN532與USB轉串口連接好,放一張IC卡靠近PN532模塊2&#xff0c;安裝libnfc&#xff1a;chunliubuntu:~$ sudo apt…

chrome同步_如何在Chrome中打開或關閉同步

chrome同步Google Chrome lets you sync up your Google account to your browser across any device. When enabled, bookmarks, history, passwords, extensions, and themes—among many other settings—sync from your Google account, creating a seamless experience no…

sublime text3搭建react native

Sublime Text 3 搭建React.js開發環境 Sublime有很強的自定義功能&#xff0c;插件庫很龐大&#xff0c;針對新語言插件更新很快&#xff0c;配合使用可以快速搭建適配語言的開發環境。 1. babel-sublime 支持ES6&#xff0c; React.js, jsx代碼高亮&#xff0c;對 JavaScript,…

linux系統輸入指令,詳解linux系統輸入輸出管理和vim的常用功能

####系統中輸入輸出的管理####1.理解系統的輸入輸出重定向輸入重定向是指把文件導入到命令中&#xff0c;而輸出重定向則是把原本要輸出到屏幕的數據信息寫入到指定文件中。2.管理輸入輸出的符號##輸出重定向> ##重定向正確輸2> ##重定向錯誤輸出&> …

Deep Learning(深度學習)學習筆記整理(二)

本文整理了網上幾位大牛的博客&#xff0c;詳細地講解了CNN的基礎結構與核心思想&#xff0c;歡迎交流 [1]Deep learning簡介 [2]Deep Learning訓練過程 [3]Deep Learning模型之&#xff1a;CNN卷積神經網絡推導和實現 [4]Deep Learning模型之&#xff1a;CNN的反向求導及練習 …