1、数值型常用函数
函数
(资料图片)
返回值
样例
显示 ceil(n) 大于或等于数值n的最小整数
select ceil(10.6) from dual; 11
floor(n) 小于等于数值n的最大整数 select ceil(10.6) from dual; 10
mod(m,n) m除以n的余数,若n=0,则返回m select mod(7,5) from dual; 2
power(m,n) m的n次方
select power(3,2) from dual; 9
round(n,m) 将n四舍五入,保留小数点后m位
select round(1234.5678,2) from dual; 1234.57
sign(n) 若n=0,则返回0,否则,n>0,则返回1,n<0,则返回-1 select sign(12) from dual; 1
sqrt(n) n的平方根
select sqrt(25) from dual ; 5
2、常用字符函数
initcap(char) 把每个字符串的第一个字符换成大写
select initicap("mr.ecop") from dual; Mr.Ecop
lower(char) 整个字符串换成小写
select lower("MR.ecop") from dual; mr.ecop
replace(char,str1,str2) 字符串中所有str1换成str2 select replace("Scott","s","Boy") from dual; Boycott
substr(char,m,n) 取出从m字符开始的n个字符的子串
select substr("ABCDEF",2,2) from dual; CD
length(char) 求字符串的长度
select length("ACD") from dual; 3
|| 并置运算符
select "ABCD"||"EFGH" from dual; ABCDEFGH
3、日期型函数
sysdate 当前日期和时间 select sysdate from dual;
last_day 本月最后一天 select last_day(sysdate) from dual;
add_months(d,n) 当前日期d后推n个月 select add_months(sysdate,2) from dual;
months_between(d,n) 日期d和n相差月数 select months_between(sysdate,to_date("20020812","YYYYMMDD")) from dual;
next_day(d,day) d后第一周指定day的日期 select next_day(sysdate,"Monday") from dual;
day 格式
有
"Monday" 星期一
"Tuesday" 星期二
"wednesday" 星期三 "Thursday" 星期四 "Friday" 星期五
"Saturday" 星期六 "Sunday" 星期日
4、特殊格式的日期型函数
Y或YY或YYY 年的最后一位,两位,三位 select to_char(sysdate,"YYY") from dual;
Q 季度,1-3月为第一季度
select to_char(sysdate,"Q") from dual;
MM 月份数
select to_char(sysdate,"MM") from dual;
RM 月份的罗马表示 select to_char(sysdate,"RM") from dual; IV
month 用9个字符表示的月份名 select to_char(sysdate,"month") from dual;
ww 当年第几周
select to_char(sysdate,"ww") from dual;
w 本月第几周
select to_char(sysdate,"w") from dual;
DDD 当年第几天,一月一日为001 ,二月一日032 select to_char(sysdate,"DDD") from dual;
DD 当月第几天 select to_char(sysdate,"DD") from dual;
D 周内第几天 select to_char(sysdate,"D") from dual; 如 sunday
DY 周内第几天缩写
select to_char(sysdate,"DY") from dual; 如 sun
hh12 12小时制小时数
select to_char(sysdate,"hh12") from dual;
hh24 24小时制小时数
select to_char(sysdate,"hh24") from dual;
Mi 分钟数
select to_char(sysdate,"Mi") from dual;
ss 秒数
select to_char(sysdate,"ss") from dual;
select to_char(sysdate,"YYYY-MM-DD HH:24:mi:ss") from dua;
to_number() 将合法的数字字符串 select to_number("88877") from dual; 88877
to_char() 将数字转换为字符串 select to_char(88877) from dual; "88877"
set serveroupt on;
dbms_output.put_line("hello world")
set heading off 由于正在创建数据文件,不需要表头
set pagesize 0 不需要分页
set linesize 80 设置行的最大尺寸
set echo off 告诉sql plus 在执行语句时,不要回显语句
set feedback off 禁止sql plus 显示有多少满足查询的行被检索到
col sales format 999,999,999
append 添加文本到当前行尾
change/old/new/ 在当前行用新的文本代替旧的文本
change/text 从当前行删除wenb
del 删除当前行
input text 在当前行之后添加一行
list 显示缓冲区中的所有行
list n 显示缓冲区中的第n行
list m n 显示m到n
5、字符函数
--------------------------------------------------------------------------------
字符函数主要用于修改字符列。这些函数接受字符输入,返回字符或数字值。Oracle 提供的一些字符函数如下。
1. CONCAT (char1, char2)
返回连接“char2”的“char1”。
示例 SELECT CONCAT( CONCAT(ename, " is a "), job) FROM emp;
2. INITCAP(string)
将“string”的字符转成大写。
示例 Select INITCAP(ename) from emp;
3. LOWER (string)
将“string”转成小写。
示例 Select LOWER(ENAME) from emp;
4. LPAD(char1,n [,char2])
返回“char1”,左起由“char2”中的字符补充到“n”个字符长。如果“char1”比“n”长,则函数返回“char1”的前“n”个字符。
示例 SELECT LPAD(ename,15,"*") FROM emp;
5. LTRIM(string,trim_set)
从左边删除字符,此处“string”是数据库的列,或者是字面字符串,而“trim_set” 是我们要去掉的字符的集合。
示例 SELECT LTRIM("abcdab","a") FROM DUAL;
6. REPLACE(string, if, then)
用 0 或其他字符代替字符串中的字符。“if”是字符或字符串,对于每个出现在“string”中的“if”,都用“then”的内容代替。
示例 SELECT REPLACE("JACK and JUE","J","BL") FROM DUAL;
7. RPAD(char1, n [,char2])
返回“char1”,右侧用“char2”中的字符补充到“n”个字符长。如果 “char1”比“n” 长,则函数返回“char1”的前“n”个字符。
示例 SELECT RPAD(ename,15,"*") FROM emp;
8. RTRIM(string,trim_set)
从右侧删除字符,此处“string”是数据库的列,或者是字面字符串,而“trim_set” 是我们要去掉的字符的集合。
示例 SELECT RTRIM("abcdef", "f") FROM DUAL;
9. SOUNDEX(char)
返回包含“char”的表意字符的字符串。它允许比较英语中拼写不同而发音类似的字。
示例 SELECT ename FROM emp
WHERE SOUNDEX(ename) = SoUNDEX("SMYTHE");
10. SUBSTR(string, start [,count])
返回“string”中截取的一部分。该命令截取“string”的一个子集,从“start”位置开始,持续“count”个字符。如果我们不指定“count”,则从“start”开始截取到“string”的尾部。
示例 SELECT SUBSTR("ABCDEFGIJKLM",3,4) FROM DUAL;
11. TRANSLATE(string, if, then)
“if”中字符的位置,并检查“then”的相同位置,然后用该位置的字符替换 “string”中的字符。
示例 SELECT TRANSLATE(ename,"AEIOU", "XXXXX") FROM emp;
12. UPPER(string)
返回大写的“string”。
示例 SELECT UPPER("aptech computer education") FROM dual;
13. ASCII(string)
该命令是“American Standard Code for Information Interchange”的缩写。它是使用数字表示可打印字符的基本规则。该函数返回 “string”中第一个(最左边)字符的 ASCII 值。
示例 SELECT ASCII("APTECH") from dual;
14. INSTR (string, set[, start[, occurrence] ] )
该命令“string”中从“start”位置开始查找字符集合的位置,再查找“set”出现的第一次、第二次等等的“occurrence”(次数)。“start”的值也可以是负数,代表从字符串结尾开始向反方向搜索。该函数也用于数字和日期数据类型。
示例 SELECT INSTR("aptech is aptech","ap",1,2) FROM DUAL;
15. LENGTH(string)
返回“string”的长度值。
示例 SELECT ename, LENGTH(ename) FROM emp
WHERE empno = 7698;
国际市场偏弱运行 2月以来,国际煤炭市场偏弱运行。欧洲三港的煤炭库存在高位徘徊。2月10日,欧洲三港煤炭总库存达到5699万吨,比去年更多
2023-02-22 10:12:16截至目前,全国各省(市、区)的2023年政府工作报告已陆续发布,其中关于能源领域的表述勾勒出各地今年乃至未来5年能源产业发展的路线图和更多
2023-02-22 09:54:13监测数据显示,1月天津市煤炭均价为734元吨,环比持平,同比下降12%。1月动力煤市场整体运行平稳,上游煤矿自元旦后陆续安排春节放假,平更多
2023-02-22 10:14:29根据巴彦淖尔市商务局监测的数据显示,1月份,煤炭均价为102778元吨,较上月下降46%。其中,无烟煤2号平均价格为81667元吨,较上月下降35%更多
2023-02-22 10:12:05上周以来,在刚性采购需求明显恢复和短期大幅下跌后的投机需求带动下,煤炭市场情绪面持续好转,价格迎来全面上行。 产地方面,库存压更多
2023-02-22 09:53:10一、全省用电情况 1月份,江苏省全社会用电量53662亿千瓦时,同比下降1301%;年累计全社会用电量53662亿千瓦时,同比下降1301%。 本更多
2023-02-22 08:55:28截至目前,大唐华银电力股份有限公司圆满完成了2023年电煤中长期合同订货工作,全年电煤需求实现长协煤100%全覆盖,订货总量创历史新高。更多
2023-02-22 09:04:20国家矿山安全监察局陕西局消息,2022年12月份,陕西省原煤产量665321万吨,同比增加7036万吨,上升107%,环比增加28259万吨,上升444%。 更多
2023-02-22 08:54:30上周,终端库存高企,日韩对澳煤需求继续保持低迷,欧洲地区天然气库存高位且煤炭现货供应较为充足,抑制终端采购兴趣,澳大利亚动力煤价更多
2023-02-21 16:15:15中国铁路太原局集团有限公司介绍称,春运40天累计完成发送煤炭72816万吨,同比增12%,旅客发送量同比增长187%。 为确保春运期间电煤等更多
2023-02-21 10:14:28