select A.USER_NAME, decode(A.SEX, 1, '男', 2, '女')AS SEX, A.HEAD_PORTRAIT, TRUNC(months_between(sysdate, A.BIRTHDAY) / 12) || '岁' AS BIRTHDAY, Z.DISEASE_NAME from T_PATIENT_INFO A 说明:decode 数值匹配字段,写到sql里就不用再到页面上进行<c:if>判断了, months_between 获取两个时间之间的间隔…
--oracle看到用户的所有表名.表睐.字段名称.现场的目光.是空的.字段类型 select distinct TABLE_COLUMN.*, TABLE_NALLABLE.DATA_TYPE, TABLE_NALLABLE.NULLABLE from (select distinct utc.table_name table_name, utc.comments table_comments, ucc.column_name column_name, ucc.comments column_…
一.天数: 在Oracle中,两个日期直接相减,便可以得到天数: select to_date('08/06/2015','mm/dd/yyyy')-to_date('07/01/2015','mm/dd/yyyy') from dual; 二.月数: 计算月数,需要用到months_between函数: select months_between(to_date('01/31/2015','mm/dd/yyyy'),to_date('12/31/2014','mm/dd/yyyy')) "MO…
转载:https://www.cnblogs.com/benio/archive/2011/06/01/2066106.html 学习步骤:1. 拥有Oracle EBS demo 环境 或者 PROD 环境2. copy以下代码进 PL/SQL3. 配合解释分析结果4. 如果网页有点乱请复制到TXT中查看 /*假设一个经理代表了一个部门*/SELECT emp.full_name, emp.salary, emp.manager_id, row_number() over(PARTITION…
-- Oracle 取上周一到周末的sql -- 这样取的是 在一周内第几天,是以周日为开始的 select to_char(to_date('20130906','yyyymmdd'),'d') from dual; --结果:6 注释:2013.09.06是周五,为本周的第六天 select to_char(sysdate+(2-to_char(sysdate,'d'))-7,'yyyymmdd') from dual;---上周一 select to_char(sysdate+(2-to_…
方法:SELECT Trunc(MONTHS_BETWEEN(SYSDATE,BIRTH_DATE)/12) FROM 某表 Trunc函数在这里对带有小数位数的数字取整数部分: SYSDATE为oracle的获取当前日期的函数: BIRTH_DATE为我自己的数据库表中存储生日日期的字段. 实际执行SQL: --根据出生日期计算年龄SELECT Trunc(MONTHS_BETWEEN( to_date(to_char(sysdate, 'yyyy-MM-dd'),'yyyy-MM-dd'),…
1.错误原因: date类型不能包含秒以后的精度. 如日期:2010-01-01 20:02:20.0 解决方法:将日期秒以后的精度去除, to_date(substr(INVOICE_DATE,1,10),'yyyy-mm-dd')如日期:2010-01-01 20:02:20 2.INSERT INTO TEST2 (C1, C2,c3) VALUES (${v1},${v2},to_date(${v3},'yyyy-mm-dd'));oracle里面不需要以“:”结尾. 3.修改数据库日期…
select count(KEYCODE) from STHSGDOC.ZJSJJL where ysrq=to_date(to_char(sysdate,'yyyy')||'/1','yyyy/MM/'); 查询当年一月份的数据,其中用到了to_char以及to_date, to_char的用法是吧字段转换为char类型,举个例子: to_char(sysdate, 'yyyy/mm/dd'); 相当于按照这个格式转化了系统的时间,结果就是'2003/07/09' . 那么to_date就是转…
to_date("要转换的字符串","转换的格式")   两个参数的格式必须匹配,否则会报错. 即按照第二个参数的格式解释第一个参数. to_char(日期,"转换格式" ) 即把给定的日期按照“转换格式”转换. 转换的格式: 表示year的:y  表示年的最后一位 yy 表示年的最后2位 yyy 表示年的最后3位 yyyy 用4位数表示年 表示month的:mm 用2位数字表示月:mon 用简写形式 比如11月或者nov :month 用全称…
-- Oracle 取上周一到周末的sql -- 这样取的是 在一周内第几天,是以周日为开始的 select to_char(to_date('20130906','yyyymmdd'),'d') from dual; --结果:6 注释:2013.09.06是周五,为本周的第六天 select to_char(sysdate+(2-to_char(sysdate,'d'))-7,'yyyymmdd') from dual;---上周一 select to_char(sysdate+(2-to_…