oracle 常用(一)
常用的6个分组函数: 注意点:where字句中不能使用组函数。要用到having函数。 但是从优化角度看,尽量使用where
avg :平均值 sum:求和 min:最小值 max:最大值 count:求个数 wm_concat:行转列 nvl(列名,0)空置给0
例子1:select avg(列名),sum(列名) from 表名; -----> 查询表名里面某列的平均值以及求和 。 最小只和最大值,count 一样 count可以写(*)。count(distinct 列名) 这个可以去重复
例子2:select 列名1, wm_concat(列名2) from 表名 group by 列名1;
这个是按找列名1 查询列名2 的数据并把列名2的数据进行行转列
例子3:select count(*),count(nvl(列名,0)) from 表名; 计算个数时,空值计算到
group by 语句:
例: select 列名1,avg(列名2) from 表名 group by 列名1;
意思就是按照列名1分组查询列名2的平均值
格式:select a,组函数(x) form 表名 group by a; 注意;所有没有包含在函数的列都要跟在group by 后面
order by 排序
例: select 列名1,列名2,avg(列名2) from 表名 group by 列名1,列名2 order by 列名1;
查询出来之后按列名1 进行排序 便于查看
默认是升序,后面加上 空格 desc 就是降序
例:select 列名1,列名2,avg(列名2) from 表名 group by 列名1,列名2 order by 列名1 desc;
where 和having
例: select 列名1, avg(列名2) from 表名 group by 列名1 having 列名1 =X;
select 列名1, avg(列名2) from 表名 where 列名1 =X group by 列名1 ;
这两条语句执行结果是一样的。前者是先分组在过滤。后者是先过滤在分组。 我们优先用后者
别名例:
SELECT a.XXX_id 分拨的ID,a.XXX_name 分拨 FROM XXAXX a where a.XXX_name in ('南通分拨中心','淮安分拨中心','芜湖分拨中心',
'蚌埠分拨中心','杭州分拨中心','温州分拨中心','宁波分拨中心') order by 分拨的ID

--这样的例子是木有意义的,只是一个例子
也可以order by 1 意思是查询列的第一个列
SELECT a.XXX_id 分拨的ID,a.XXX_name 分拨 FROM XXAXX a where a.XXX_name in ('南通分拨中心','淮安分拨中心','芜湖分拨中心',
'蚌埠分拨中心','杭州分拨中心','温州分拨中心','宁波分拨中心') order by 1

这样的效果是一样的
分组函数嵌套:
例: select max(avg(列名) ) from 表名;
剩下的再补充
oracle 常用(一)的更多相关文章
- Oracle常用命令大全(很有用,做笔记)
一.ORACLE的启动和关闭 1.在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a.启动ORACLE系统 oracle>svrmgrl ...
- Oracle常用语法
Oracle常用语句语法汇总 Oracle10g 1 第一章Oracle命令 a) 系统管理员连接 conn */* as sysdba b) 查询当前用户 show user c) 创建新用户 cr ...
- Oracle常用函数
前一段时间学习Oracle 时做的学习笔记,整理了一下,下面是分享的Oracle常用函数的部分笔记,以后还会分享其他部分的笔记,请大家批评指正. 1.Oracle 数据库中的to_date()函数的使 ...
- Oracle常用SQL查询(2)
三.查看数据库的SQL 1 .查看表空间的名称及大小 select t.tablespace_name, round ( sum (bytes / ( 1024 * 1024 )), 0 ) ts ...
- Oracle常用语句集合
oracle常用经典SQL查询 常用SQL查询: .查看表空间的名称及大小 )),) ts_size from dba_tablespaces t, dba_data_files d where t. ...
- oracle常用命令(比较常见好用)
一.ORACLE的启动和关闭 1.在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a.启动ORACLE系统 oracle>svrmgr ...
- oracle 常用语法
一.ORACLE的启动和关闭1.在单机环境下要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下su - oraclea.启动ORACLE系统oracle>svrmgrlSVRMG ...
- ORACLE 常用字符函数
ORACLE 常用字符函数1 ASCII(arg1)返回参数arg1的十进制数字表示.如果数据库设置为ASCII,则采用的是ASCII码字符.如果设置为EBCDIC,则采用的是EBCDIC字符 sel ...
- Oracle常用命令1
一. 安装是用户管理: sqlplus /nolog; connect /as sysdba; alter user sys identified by change_on_install; alte ...
- ORACLE 常用SQL查询
一.ORACLE的启动和关闭 1 .在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a.启动ORACLE系统 oracle > sv ...
随机推荐
- [No0000FA]C# 接口(Interface)
接口定义了所有类继承接口时应遵循的语法合同.接口定义了语法合同 "是什么" 部分,派生类定义了语法合同 "怎么做" 部分. 接口定义了属性.方法和事件,这些都是 ...
- [No0000CA]什么是“普瑞马法则”?以及 如何利用“普瑞马法则”,三步克服惰性
一般在学习和生活中,我们都可能有这样的经验,就是当说想要作某件事情的时候,但过了好久发现还是没有做:或者觉得有力气使不出来:或者总觉得生活是灰色和抑郁的等等. 这类情况反映在生活中,就是生活好像总是被 ...
- present simple, continuous, and be going to 三者区别
https://www.youtube.com/watch?v=a03VKQL0dZg&list=PLZOJurmtexYozmvQGAJnVg3lgiZw0mj-y HOW TO USE F ...
- mail 发送email
(一)首先安装ssmpt和mailutils: sudo apt-get install ssmtp mailutils (二)接下来编辑配置文件sudo gedit /etc/ssmtp/ssmtp ...
- day0315 迭代器
一. 迭代器 1.什么是可迭代器? 除了数字和布尔值之外,其他数据类型都是可迭代对象.(字符串,列表,元组,字典,集合) 2.可迭代协议 2.1 可以被迭代要满足的要求就叫可迭代协议,可迭代的定义非常 ...
- [dpdk] TSC , HPET, Timer, Event Timer,RDTSCP
关于dpdk timer跨越CPU core调度的准确性问题 首先dpdk的timer接口里边使用 cpu cycle来比较时间.根据之前的内容 [dpdk] dpdk --lcores参数 当一个E ...
- [qemu][kvm] 在一个vmware虚拟机里安装qemu-kvm虚拟机
说起来这个需求,简直是傻傻的.但却实实在在的摆在我的面前.... VM无外乎就是为了模拟场景:我现在要的场景就是一台很多个core的linux主机.但是我只有一个装了windows的笔记本.上边有一个 ...
- [daily] docker
what docker is? https://www.docker.com/what-docker 一: archlinux 安装docker: 我之前装了一个, 然后好久没用, 今天发现不能用了, ...
- [UI] UI things
反正我不懂. 但是很酷. https://facebook.github.io/react/ https://cn.vuejs.org/ https://angular.cn/
- sql server 按外键分组查询
SELECT ROW_NUMBER() over(partition by a.yngrbsh order by a.SFRQ desc ) RN, c.' and a.LSH not in(sele ...