1.oracle先建立函式方法,再直接使用,mysql直接使用方法unix_timestamp,from_unixtime
oracle_to_unix(create_date)
createorreplace
function oracle_to_unix(in_date in date) return
number
isbegin
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)
createorreplace
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)
ascreate_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
mysql:
select * from tbl limit 100;
oracle:
select * from tbl where rownum<=100;
sql server:
select top 100 * from tbl
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不同。
oracle:sysdate 加括號容易出現錯誤:缺少逗號
mysql:sysdate()
mysql實現自增函式
這兩天在思考怎麼生成資料庫隨機名稱,思前想後覺得還是利用自增的邏輯主鍵是最方便快捷的,於是便嘗試著獲取一種自增的mysql函式 自增mysql函式 1 begin 2 declare id int default 0 3 select cuid 1 into id from uc gen numbe...
MySQL 實現自增函式sequence
當前資料庫為 mysql 由於mysql和oracle不太一樣,不支援直接的sequence,所以需要建立一張table來模擬sequence的功能,理由sql語句如下 create table sequence name varchar 50 collate utf8 bin not null c...
建構函式和一般函式
建構函式 構建創造物件時呼叫的函式,作用 可以給物件進行初始化。建立物件都必須要通過建構函式初始化。如果乙個類中沒有定義建構函式,那麼該類中就會有乙個預設的無參建構函式。如果在類中定義了指定的建構函式,那麼類中的預設建構函式就沒有了。建構函式和一般函式有什麼區別呢?建構函式 物件建立時,就會呼叫與之...