搜尋
首頁資料庫mysql教程Oracle基本查询过滤排序示例解析

Oracle基本查询过滤排序示例解析

Jun 07, 2016 pm 04:20 PM
oracle基本排序查詢範例解析

以下是对Oracle中的基本查询过滤排序示例进行了详细的分析介绍,需要的朋友可以参考下 基本查询: 复制代码 代码如下: --查询所有员工的信息 select * from emp; --设置行宽 set linesize 120; --设置列宽为四个数字的宽度 col empno for 9999; --设置列宽,a

以下是对Oracle中的基本查询过滤排序示例进行了详细的分析介绍,需要的朋友可以参考下

 

基本查询:

复制代码 代码如下:


--查询所有员工的信息
select * from emp;
--设置行宽
set linesize 120;
--设置列宽为四个数字的宽度
col empno for 9999;
--设置列宽,a表示字符串共八位长度
col ename for a8
--设置pageSize每页显示30条记录
set pagesize 30;
--sql中支持算数表达式,注意:如果一个表达式中含有空值,则整个表达式为空
select empno,ename,sal,sal*12,comm,sal*12+comm from emp;
--使用滤空函数如果comm为空将以0代替
select empno,ename,sal,sal*12,comm,sal*12+nvl(comm,0) from emp;
--使用别名的三种方式,别名中有无双引号的区别:带双引号的可以包含空格和特殊字符,不带双引号的则不能
select empno as "员工编号",ename "姓名",sal 月薪,comm,sal*12+nvl(comm,0)年收入 from emp;
--关于disctinct,相同记录只取一次
select distinct deptno from emp;
--当disctinct跟多个值时,当deptno和job均一样时,才认为是相同记录
select distinct deptno,job from emp;
--连接符的使用
select ename ||'的薪水是'||sal from emp;


注意:
SQL 语言大小写不敏感。
SQL 可以写在一行或者多行
关键字不能被缩写也不能分行
各子句一般要分行写。
使用缩进提高语句的可读性。

过滤和排序

复制代码 代码如下:


--查询系统参数
select * from v$nls_parameters;
--修改日期格式
alter session set NLS_DATE_FORMAT='yyyy-mm-dd';
--隐士方式转换日期,会影响性能
select * from emp where hiredate='1981-11-17';
--显示方式转换日期
select * from emp where hiredate=to_date('1981-11-17','yyyy-mm-dd');
--比较运算符,查询工资大于1000,小于2000的员工,between and含边界
select * from emp where sal>=1000 and sal select * from emp where sal between 1000 and 2000;
--in: 在集合中,查询10号部门和20号部门的员工
select * from emp where deptno=10 or deptno=20;
select * from emp where deptno in (10,20);
--模糊查询:查询名字以S打头的员工
select * from emp where ename like 'S%';
--查询名字有四个字的员工,,要求四个下划线
select * from emp where ename like '____';
--查询姓名中含义下划线的员工,_下划线为特殊字符需要转义,escape 声明转义
select * from emp where ename like '%_%' escape '';
--查询奖金不为空的员工
select * from emp where comm is not null;
--查询员工信息,按照月薪排序
select * from emp order by sal;
--a命令:追加命令,将上边改为降序排序
a  desc
--查询员工信息,按照年薪排序
select empno,ename,sal,sal*12 from emp order by sal*12;
--order by后面可以跟别名
select empno,ename,sal,sal*12 年薪 from emp order by 年薪;
--order by后面可以跟序号
select empno,ename,sal,sal*12 from emp order by 4;
--order by作用于多列,先按照第一列排序;然后按照第二列排
select * from emp order by deptno,sal;
--order by作用于多列,降序需要每列均有desc
select * from emp order by deptno desc,sal desc
--将空值排到最后
select * from emp order by comm desc nulls last;
--屏蔽/开启反馈信息
set feedback off/set feedback on


排序的规则 :
可以按照select语句中的列名排序
可以按照别名列名排序
可以按照select语句中的列名的顺序值排序
如果要按照多列进行排序,则规则是先按照第一列排序,如果相同,则按照第二列排序;以此类推

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
MySQL中的存儲過程是什麼?MySQL中的存儲過程是什麼?May 01, 2025 am 12:27 AM

存儲過程是MySQL中的預編譯SQL語句集合,用於提高性能和簡化複雜操作。 1.提高性能:首次編譯後,後續調用無需重新編譯。 2.提高安全性:通過權限控制限制數據表訪問。 3.簡化複雜操作:將多條SQL語句組合,簡化應用層邏輯。

查詢緩存如何在MySQL中工作?查詢緩存如何在MySQL中工作?May 01, 2025 am 12:26 AM

MySQL查詢緩存的工作原理是通過存儲SELECT查詢的結果,當相同查詢再次執行時,直接返回緩存結果。 1)查詢緩存提高數據庫讀取性能,通過哈希值查找緩存結果。 2)配置簡單,在MySQL配置文件中設置query_cache_type和query_cache_size。 3)使用SQL_NO_CACHE關鍵字可以禁用特定查詢的緩存。 4)在高頻更新環境中,查詢緩存可能導致性能瓶頸,需通過監控和調整參數優化使用。

與其他關係數據庫相比,使用MySQL的優點是什麼?與其他關係數據庫相比,使用MySQL的優點是什麼?May 01, 2025 am 12:18 AM

MySQL被廣泛應用於各種項目中的原因包括:1.高性能與可擴展性,支持多種存儲引擎;2.易於使用和維護,配置簡單且工具豐富;3.豐富的生態系統,吸引大量社區和第三方工具支持;4.跨平台支持,適用於多種操作系統。

您如何處理MySQL中的數據庫升級?您如何處理MySQL中的數據庫升級?Apr 30, 2025 am 12:28 AM

MySQL數據庫升級的步驟包括:1.備份數據庫,2.停止當前MySQL服務,3.安裝新版本MySQL,4.啟動新版本MySQL服務,5.恢復數據庫。升級過程需注意兼容性問題,並可使用高級工具如PerconaToolkit進行測試和優化。

您可以使用MySQL的不同備份策略是什麼?您可以使用MySQL的不同備份策略是什麼?Apr 30, 2025 am 12:28 AM

MySQL備份策略包括邏輯備份、物理備份、增量備份、基於復制的備份和雲備份。 1.邏輯備份使用mysqldump導出數據庫結構和數據,適合小型數據庫和版本遷移。 2.物理備份通過複製數據文件,速度快且全面,但需數據庫一致性。 3.增量備份利用二進制日誌記錄變化,適用於大型數據庫。 4.基於復制的備份通過從服務器備份,減少對生產系統的影響。 5.雲備份如AmazonRDS提供自動化解決方案,但成本和控制需考慮。選擇策略時應考慮數據庫大小、停機容忍度、恢復時間和恢復點目標。

什麼是mySQL聚類?什麼是mySQL聚類?Apr 30, 2025 am 12:28 AM

MySQLclusteringenhancesdatabaserobustnessandscalabilitybydistributingdataacrossmultiplenodes.ItusestheNDBenginefordatareplicationandfaulttolerance,ensuringhighavailability.Setupinvolvesconfiguringmanagement,data,andSQLnodes,withcarefulmonitoringandpe

如何優化數據庫架構設計以在MySQL中的性能?如何優化數據庫架構設計以在MySQL中的性能?Apr 30, 2025 am 12:27 AM

在MySQL中優化數據庫模式設計可通過以下步驟提升性能:1.索引優化:在常用查詢列上創建索引,平衡查詢和插入更新的開銷。 2.表結構優化:通過規範化或反規範化減少數據冗餘,提高訪問效率。 3.數據類型選擇:使用合適的數據類型,如INT替代VARCHAR,減少存儲空間。 4.分區和分錶:對於大數據量,使用分區和分錶分散數據,提升查詢和維護效率。

您如何優化MySQL性能?您如何優化MySQL性能?Apr 30, 2025 am 12:26 AM

tooptimizemysqlperformance,lofterTheSeSteps:1)inasemproperIndexingTospeedUpqueries,2)使用ExplaintplaintoAnalyzeandoptimizequeryPerformance,3)ActiveServerConfigurationStersLikeTlikeTlikeTlikeIkeLikeIkeIkeLikeIkeLikeIkeLikeIkeLikeNodb_buffer_pool_sizizeandmax_connections,4)

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。