ORACLE自增函数,一般函数

Posted 沿海地带

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ORACLE自增函数,一般函数相关的知识,希望对你有一定的参考价值。

1.UNIX时间与普通时间互相转换

1.ORACLE先创建函数方法,再直接使用,mysql直接使用方法UNIX_TIMESTAMP,FROM_UNIXTIME

oracle_to_unix(create_date)
create or replace function oracle_to_unix(in_date in date) return number is
begin
  return((in_date - to_date(19700101, yyyymmdd)) * 86400 -
         to_number(substr(tz_offset(sessiontimezone), 1, 3)) * 3600);
end oracle_to_unix;
unix_to_oracle(create_date)
create or replace function unix_to_oracle(in_number number) return date is
begin
  return (to_date(19700101,yyyymmdd) + in_number/86400
  + to_number(substr(tz_offset(sessiontimezone),1,3))/24);
end unix_to_oracle;
Exp:
SELECT *
  FROM (SELECT mobile,
               /*UNIX_TIMESTAMP(create_date) as create_date,*/
               /*to_timestamp(create_date, ‘yyyy-mm-dd hh24:mi:ss‘) as create_date,*/
               /*to_timestamp(create_date) as create_date,*/
               oracle_to_unix(create_date)  as create_date,
               code,
               code_status,
               uuid
        /*top (1)*/
          FROM R_CHECK_CODE
         WHERE code_status = 0
           and mobile = 138******
        /*and rownum<=1*/
         order by create_date desc) s
 where rownum <= 1

2.显示数据数量限制

MYSQL:

   select * from tbl limit 100;

ORACLE:

  select * from tbl where rownum<=100;

SQL SERVER:

  select top 100 * from tbl

3.小数取整

ORACLE:取整函数trunc():

  trunc(12.354),返回值12

  trunc(12.354,1),返回值12.3

  trunc(12.354,-1),返回值10

MYSQL:数值处理函数floor与round

  floor:函数只返回整数部分,小数部分舍弃。

  round:函数四舍五入,大于0.5的部分进位,不到则舍弃。与floor不同。

4.获取当前时间

ORACLE:sysdate  加括号容易出现错误:缺少逗号

MySQL:sysdate()

以上是关于ORACLE自增函数,一般函数的主要内容,如果未能解决你的问题,请参考以下文章

DB2自增字段

Oracle创建自增字段方法-ORACLE SEQUENCE的简介

在Oracle中如何实现字段内的值自增呢?

ORACLE数据库实现自增的两种方式

Oracle Decode()函数和CASE语句的比较

Hive实现自增列的两种方法