Oracle语法温故(字符串相关函数、数值相关函数、单行函数、多行函数)

来源:互联网 发布:mac怎么换管理员 编辑:程序博客网 时间:2024/05/31 18:40
/* 字符串相关函数 */DECLAREV_TO_DAY VARCHAR2(50);V_TO_NUM NUMBER;BEGINV_TO_DAY := TO_CHAR(SYSDATE, 'yyyy.mm.dd hh24:mi:ss') ;DBMS_OUTPUT.PUT_LINE('TO_CHAR:'||V_TO_DAY);V_TO_NUM := TO_NUMBER('9999');DBMS_OUTPUT.PUT_LINE('TO_NUMBER:'||V_TO_NUM);--拼接字符串DBMS_OUTPUT.PUT_LINE('CONCAT:'||CONCAT('This is a',' computer'));--获取字符串占用字符数值大小DBMS_OUTPUT.PUT_LINE('LENGTH:'||LENGTH('我们是中国人'));--转换小写DBMS_OUTPUT.PUT_LINE('LOWER:'||LOWER('WO MEN SHI ZHONG GUO REN'));--转换大写DBMS_OUTPUT.PUT_LINE('UPPER:'||UPPER('wo men shi zhong guo ren'));--字符串截取DBMS_OUTPUT.PUT_LINE('SUBSTR:'||SUBSTR('WO MEN SHI ZHONG GUO REN',4,6));--替换指定字符内容DBMS_OUTPUT.PUT_LINE('REPLACE:'||REPLACE('邪神','邪神','皇阿玛'));END;/* 数值相关函数 */DECLAREBEGIN--取绝对值DBMS_OUTPUT.PUT_LINE('ABS:'||ABS(-1));--求模DBMS_OUTPUT.PUT_LINE('MOD:'||MOD(5,2));--指定number后面的小数位长度DBMS_OUTPUT.PUT_LINE('ROUND:'||ROUND('1001.1124567',2));--判断数值类型,负数为-1,正数为1,0为0DBMS_OUTPUT.PUT_LINE('SIGN:'||SIGN(-99.9));DBMS_OUTPUT.PUT_LINE('SIGN:'||SIGN(99.9));DBMS_OUTPUT.PUT_LINE('SIGN:'||SIGN(0.0));END;/* 单行函数 */DECLAREBEGIN--该函数返回列表中项的最大值.对数值或日期来说,返回值是最大值或最晚日期,--如果列表中包含字符串,返回值是按字母顺序列表中的最后一项.SELECT GREATEST(123,234,432,112) FROM DUAL;SELECT GREATEST('w','a') FROM DUAL;SELECT GREATEST(sysdate,sysdate-10) FROM DUAL;--该函数返回列表中项的最小值.对数值或日期来说,返回值是最小值或最早日期,--如果列表中包含字符串,返回值是按字母顺序列表中的第一项.SELECT LEAST(123,234,432,112) FROM DUAL;SELECT LEAST('w','a') FROM DUAL;SELECT LEAST(sysdate,sysdate-10) FROM DUAL;--如果表达式不为空值,函数返回该表达式的值,如果是空值,就返回用来替换的值.SELECT NVL(TO_CHAR('123'),'NOT APPLICABLE') AS NVL FROM DUAL;SELECT NVL(NULL,'NOT APPLICABLE') AS NVL FROM DUAL;END;
/* 多行函数 */DECLAREBEGIN--对查询返回的数据行求平均值SELECT AVG(ET.EID) AS ENAME FROM EAB_TEST ET;--计算有效行的个数SELECT COUNT(ET.EID) AS ENAME FROM EAB_TEST ET;--对查询返回的行集求最大值.如果有多个最大值,将所有均返回SELECT MAX(ET.EID) AS ENAME FROM EAB_TEST ET;--对查询返回的行集求最小值.如果有多个最小值,将所有均返回.SELECT MIN(ET.EID) AS ENAME FROM EAB_TEST ET;--计算查询返回的所有非空数值的总和.如果返回的数据都是空值,则该函数也返回空值.SELECT SUM(ET.EID) AS ENAME FROM EAB_TEST ET;--该函数计算返回所有行的统计方差.SELECT VARIANCE(ET.EID) AS ENAME FROM EAB_TEST ET;END

原创粉丝点击