单行函数
--操作数据对象
--接受参数返回一个结果
--只对一行进行变换
--每行返回一个结果
--可以转换数据类型
--可以嵌套
--参数可以是一列或一个值
字符函数
SQL> select lower('HELLO') 大写转小写,upper('hello2') 小写转大写,initcap('hellothis world') 首字母大写 from dual;
大写 小写转 首字母大写
----- ------ ----------------
hello HELLO2 Hello This World
concat连接函数
--SQL> select 'hello' || 'world' 连接函数1,concat('fly','with') 连接函数2 from dual;
连接函数1 连接函
---------- -------
helloworld flywith
substr(a,b)--从a中,第b位开始取
substr(a,b,c)--从a中,第b位开始提取c个字符
SQL> select substr('abcdefgh',) result1,substr('',,) result2 from dual;
RESULT RESUL
------ -----
cdefgh
length获取字符数
lengthb获取字节数
一个中文是2个字节
SQL> select length('abcde'),length('世界'),length('abcde'),lengthb('世界') from dual;
LENGTH('ABCDE') LENGTH('世界') LENGTH('ABCDE') LENGTHB('世界')
--------------- -------------- --------------- ---------------
lpad()左填充函数
rpad()右填充函数
SQL> select lpad('abcd',,'*'),rpad('abcd',,'#') from dual;
LPAD('ABCD RPAD('ABCD
---------- ----------
******abcd abcd######
instr('母串','子串');在母串中查找子串,返回子串在母串中的位置,找不到返回0。
SQL> select instr('abcdef','de') from dual;
INSTR('ABCDEF','DE')
--------------------
trim去掉前后指定的字符,字符可以是空格,也可以不是空格
SQL> select trim('h' from 'hehlloh') from dual;
--注意去除的是最前后或者最后面的指定字符,中间的不会去除
--注意指定字符区分大小写
TRIM(
-----
ehllo
replace替换
SQL> select replace('helloword','w','#') from dual;
REPLACE('
---------
hello#ord
--注意是全局替换,并非只替换一个
数字函数
round:四舍五入
SQL> select round(45.926,) AA,round(45.926,) BB,round(45.926,) CC,round(45.926,-) DD,round(45.926,-) EE from dual;
AA BB CC DD EE
---------- ---------- ---------- ---------- ----------
45.93 45.9
-- 1保留到小数点后1位
-- 0保留到个位
-- -1保留到十位
-- -2保留到百位
trunc:截断小数点后面的n位
SQL> select trunc(45.926,) from dual;
TRUNC(45.926,)
---------------
45.9
mod求余
SQL> select mod(,) from dual;
MOD(,)
----------
日期函数
oracle中日期类型数据实际含有两个值:日期和时间。
默认的日期格式是 DD-MON-RR
SQL> select sysdate- 昨天,sysdate 今天,sysdate+ 明天 from dual;
昨天 今天 明天
-------------- -------------- --------------
-1月 - -1月 - -1月 -
to_char('日期/数字',format)把数字或者日期转换成指定格式的字符串
select
to_char(sysdate-,'yyyy-mm-dd hh24:mi:ss') 昨天,
to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') 今天,
to_char(sysdate+,'yyyy-mm-dd hh24:mi:ss') 明天
from dual
昨天 今天 明天
------------------- ------------------- -------------------
-- :: -- :: -- ::
日期的数学运算
--在日期上加上或减去一个数字结果仍然为日期
--两个日期相减返回日期之间相差的天数
--可以用数字除24来向日期中加上或减去小时
--查询员工入职时间,按照天、周、月、年方式显示
select ename,sysdate-hiredate 天,(sysdate-hiredate)/ 周,
(sysdate-hiredate)/ 月,(sysdate-hiredate)/ 年 from emp
months_between()--两个日期相差的月数
--精确计算员工的入职月数
SQL> select months_between(sysdate,hiredate) 入职月数 from emp;
add_months()--向指定日期中加上若干月数
SQL> select to_char(add_months(sysdate,),'yyyy-mon-dd') 当前月数加上两个月 from emp;
next_day()--指定日期的下一个日期(天)
--查询当前日期的下一个周一
SQL> select to_char(next_day(sysdate,'星期一'),'yyyy-mon-dd') 当前日期的下一个星期一 from dual;
结果
-1月 -
last_day()--本月的最后一天
SQL> select to_char(last_day(sysdate),'yyyy-mon-dd') 当前月数加上两个月 from emp;
round()--日期的四舍五入(按月四舍五入,过月半,则显示下个月)
trunc()--日期截断

数据库 数据库SQL语句二的更多相关文章

  1. Oracle数据库 基础SQL语句练习

    一.说明 第一次使用Oracle,想做一些练习,熟悉一些oracle. 表:使用的是scott用户,默认的表 具体表讲解,可以参考该文档:https://www.cnblogs.com/xjcheng ...

  2. Oracle,SQL Server 数据库较MySql数据库,Sql语句差异

    原文:Oracle,SQL Server 数据库较MySql数据库,Sql语句差异 Oracle,SQL Server 数据库较MySql数据库,Sql语句差异 1.关系型数据库 百度百科 关系数据库 ...

  3. 总结一些关于操作数据库是sql语句还是存储过程问题

    总结一些关于操作数据库是sql语句还是存储过程问题 程序中,你跟数据的交互,需要向数据库拿数据.更改数据库的数据等,这些操作,本身不是程序完成的,而是程序发命令给数据库去做的,不管是通过sql语句方式 ...

  4. SQL Server 【附】创建"商品管理数据库"、"学生选课数据库"的SQL语句

    附:(创建“商品管理数据库”的SQL语句) --建立"商品管理数据库"数据库-- create database 商品管理数据库 on(name='商品管理数据库_m', file ...

  5. 在线数据库表(sql语句)生成java实体类工具

    相信每个做java开发的读者,都接触过SQL建表语句,尤其是在项目开发初期,因为数据库是项目的基石. 在现代项目开发中,出现了许多ORM框架,通过简单的实体映射,即可实现与数据库的交互,然而我们最初设 ...

  6. GP数据库 常用SQL语句

    GP数据库 常用SQL语句 --1,查看列名以及类型 select upper(column_name) ,data_type from information_schema.columns wher ...

  7. 数据库学习---SQL基础(二)

    数据库学习---SQL基础(一) 数据库学习---SQL基础(二) 数据库学习---SQL基础(三) 上篇复习的sql的增删改查,and ,or ,>=, <=,!=等逻辑运算符,还有in ...

  8. mysql(数据库,sql语句,普通查询)

    第1章 数据库 1.1 数据库概述 l 什么是数据库 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作. l 什 ...

  9. [数据库]简单SQL语句总结

    1.在查询结果中显示列名:a.用as关键字:select name as '姓名'   from students order by ageb.直接表示:select name '姓名'   from ...

  10. 《大话数据库》-SQL语句执行时,底层究竟做了什么小动作?

    <大话数据库>-SQL语句执行时,底层究竟做了什么小动作? 前言 大家好,我是Taoye,试图用玩世不恭过的态度对待生活的Coder. 现如今我们已然进入了大数据时代,无论是业内还是业外的 ...

随机推荐

  1. OpenNLP:驾驭文本,分词那些事

    OpenNLP:驾驭文本,分词那些事 作者 白宁超 2016年3月27日19:55:03 摘要:字符串.字符数组以及其他文本表示的处理库构成大部分文本处理程序的基础.大部分语言都包括基本的处理库,这也 ...

  2. 分布式系统理论基础 - CAP

    引言 CAP是分布式系统.特别是分布式存储领域中被讨论最多的理论,“什么是CAP定理?”在Quora 分布式系统分类下排名 FAQ 的 No.1.CAP在程序员中也有较广的普及,它不仅仅是“C.A.P ...

  3. 图标字体 VS 雪碧图——图标字体应用实践

    本文介绍使用图标字体和SVG取代雪碧图的方法.雪碧图是很多网站经常用到的一种技术,但是它有缺点:高清屏会模糊.无法动态变化如hover时候反色.而使用图标字体可以完美解决上述问题,同时具备兼容性好,生 ...

  4. 数据库进阶之路(五) - MySQL行锁深入研究

    由于业务逻辑的需要,必须对数据表的一行或多行加入行锁,举个最简单的例子,图书借阅系统:假设id=1的这本书库存为1,但是有2个人同时来借这本书,此处的逻辑为: ; --如果restnum大于0,执行u ...

  5. Error:Execution failed for task ':app:clean'.

    运行时出现 Error:Execution failed for task ':app:clean'. 错误,Builld->Clean Project即可.

  6. PHPUnit整合ThinkPHP的库TPUnit

    项目地址:https://github.com/web3d/TPUnit ThinkPHP PHPUnit框架集成,基于TP3.2,建议PHP 5.4以上环境. 单元测试应该是提高PHP编码质量的解决 ...

  7. ORACLE实现自定义序列号生成

    实际工作中,难免会遇到序列号生成问题,下面就是一个简单的序列号生成函数 (1)创建自定义序列号配置表如下: --自定义序列 create table S_AUTOCODE ( pk1 ) primar ...

  8. iOS - NSMutableAttributedString富文本的实现

    NSMutableAttributedString继承于NSAttributedString(带属性的字符串)能够简单快速实现富文本的效果;不多说直接上效果图和代码,通俗易懂: (一)效果图: (二) ...

  9. Java Web之网上购物系统(注册、登录、浏览商品、添加购物车)

    眼看就要期末了,我的专业课也迎来了第二次的期末作业---------<网上购物系统>.虽然老师的意图是在锻炼我们后台的能力,但是想着还是不利用网上的模板,准备自己写,以来别人写的静态页看不 ...

  10. Android面试题(一)

    1. 请描述一下Activity 生命周期. 答: 如下图所示.共有七个周期函数,按顺序分别是: onCreate(), onStart(), onRestart(), onResume(), onP ...