oralce入门学习[通俗易懂]

oralce入门学习[通俗易懂]oracle的认识sql数据库语言关键字distinct关键字null连接符||比较运算符排序单行函数字符函数数值函数日期函数转换函数通用函数条件表达式多行函数

大家好,又见面了,我是你们的朋友全栈君。

oracle的认识

1.database数据库
2.数据文件 :
   数据库的数据是存储在表空间中的,有多个文件组成
3.表空间
    一个库被分为多个表空间,一个数据文件只能属于一个表空间

 sql数据库语言

1.DML(数据库操作语言)
其中包括insert,update,delete
2.DDL(数据定义语言)
数据操作语言,其语句包括create,drop,
3.DCL(数据库控制语言)grant 或者 revoke来获得许可
4.数据查询语言

关键字distinct

1.若是单行,就是单行不重复
2.若是多行就是要多行都不重复才可以

关键字null

is not null
is null

连接符 | |

比较运算符

=  (等于不是== )
>=
<=
<> 不等于(也可以是 !=)
//其他的比较运算符
between ...and 
in
like '%%'
is null
and 
or 
not 逻辑否

排序

1.在sql中可以使用 order by 或者order by desc
2.对于排序中我们可能会遇到null值的问题
--放到最前边
 SELECT * FROM emp order by sal nulls first;
 --放到最后边
 SELECT * FROM emp order by sal nulls last;

单行函数

1.字符
2.通用
3.转换
4.日期
5.数值

字符函数 

1.concat 也可以使用||
2.substr
select substr('hello',1,3) from dual;  --截取hel
3.length()
SELECT length('hel') FROM dual;
4.字符串替换
SELECT replace('hello','l','x') FROM  dual;

数值函数

5.数值函数
1.ROUND 四舍五入 ROUND(45.926,2)
2.TRUNC 截断 TRUNC(45.926,2)   45.92
3.MOD 求余 MOD(1600,300) 100

日期函数

//1.获取两个时间段的月数
select months_between(sysdate,hiredate) from emp;

//2.获取几个月后的日期
select add_months(sysdate,3) from dual;

转换函数

to_char(date,'YYYY-MM-DD')
SELECT to_char(hiredate,'yyyy-mm-dd') from emp;
SELECT to_char(hiredate,'fmyyyy-mm-dd') from emp; --可以去掉前导零

to_char(number,'format_model')

to_number
select to_number('10')+to_number('10') from dual;

to_date()
select to_date('1985-04-22','yyyy-mm-dd') from dual;

通用函数

常用的通用函数
NVL(expr1,expr2) -表示如实第一个值为空,就去第二个值
NVL2(expr1,expr2,expr3) -- 如第一个值不为空,取第一个值,否则取第二个值

-- nullif 表示如果第一个参数和第二个参数相等返回第一个值,否则返回第二个值
 select nullif(1,2) from dual;
-- 遇到第一个非空值就返回
 select COALESCE(null,2,null,null,3,5) from dual;

条件表达式

 select case ename 
        when 'SMITH' then '史密斯'
         when 'ALLEN' then '艾伦'
         else '张三'
  end            
from emp          
select decode(ename,'SMITH','史密斯','ALLEN','艾伦','张三') from emp; 

多行函数

什么是多行函数
分组函数是作用于一组函数,并对于一组数据返回一个值
AVG
SUM
MAX
MIN
COUNT
--------------------------------------------
分组函数 group by 
 SELECT deptno,count(ename),count(comm),avg(sal),max(sal) FROM emp group by deptno; 
注意:
1.如果使用分组函数,SQL只可以把group by 分组条件字段和分组函数查询出来
2.如果使用分组函数,不使用GROUP BY 只可以查询出来分组函数的值

where 和 having使用
SELECT  SUM(sal) 
FROM emp
 where sal>'2000'
GROUP BY deptno
HAVING SUM(sal)>8000  order by sum(sal) desc 

-- 查询出工资在2000以上的分组求和 并且分组后要大于8000

  

  

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155152.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pycharm2021.5.2激活码[在线序列号]

    pycharm2021.5.2激活码[在线序列号],https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日
    79
  • JSP程序设计课后习题答案

    JSP程序设计课后习题答案第一章JSP概述1-1JSP的全称是什么?JSP有什么优点?JSP与ASP、PHP的相同点是什么?JSP的全称是JavaServerPages。优点:跨平台、分离静态内容和动态内容、可重复使用的组件、沿用了JavaServlet的所有功能、具有预编译性。共同点:可以在页面中加入脚本代码来生成动态内容。1-2JSP中可重复使用的组件有哪些?JavaBean组件、JSP的标准标签和自定义标签。1-3什么是JSP的预编译特征?预编译是JSP的另一个重要的特性。JSP

    2022年6月16日
    26
  • Freemarker判断对象是否为空的用法

    Freemarker判断对象是否为空的用法注:https://blog.csdn.net/elladu/article/details/80393814freemark判断对象的属性&lt;#if(${blog.belongid==1})&gt;red&lt;/#if&gt;以上不对,应该是&lt;#if(blog.belongid==1)&gt;red&lt;/#if&gt;参考…

    2022年5月24日
    60
  • vue 父子组件传值

    vue 父子组件传值父子组件传值最常用的方法(4种)1.父组件传递数据给子组件(props)vue官方文档特别注意!!特别注意!!特别注意!!props传值的类型如果是Object类型,如对象,数组等,传递过去的是地址,在子组件中修改这些数据,会连带的把父组件中的值一并修改,强烈建议在子组件中深拷贝之后再使用这些值。然后使用$emit的形式,将修改好的值再传递给父组件,这样数据就会以一种单向的,可预测的形式进行修改(如果不深拷贝,会造成数据被修改后,很难找到修改源头,非常恶心)父组件父组件,定义变量tes

    2022年5月17日
    56
  • navicat15.0.22注册激活码【在线注册码/序列号/破解码】

    navicat15.0.22注册激活码【在线注册码/序列号/破解码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
    84
  • linux下载安装软件的命令(linux查看日志命令grep)

    LINUX下安装软件包常有三种linux常用命令,不同的软件包有不同的安装方法:tar包,整个安装过程可以分为以下几步:1)取得应用软件:通过下载、购买光盘的方法获得;2)解压缩文件:一般tar包,都会再做一次压缩,如gzip、bz2等,所以你需要先解压。如果是最常见的gz格式linux常用命令,则可以执行:“tar–xvzf软件包名”,就可以一步完成解压与解包工作。如果不是,则先用解压软件…

    2022年4月17日
    79

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号