首頁 資料庫 mysql教程 pl/sql对采用数字格式的日期进行日期的转换

pl/sql对采用数字格式的日期进行日期的转换

Jun 07, 2016 pm 02:55 PM
sql 數位 日期 格式 現實 轉換 進行 採用

现实中会有一种计算方法将时间计算为一个浮点数的形式来保存,这个时候就需要将其转为为可以看得懂的 日期格式 PL/SQL 数字化日期 --将用小数形式表示的 日期时间 转化为 天-小时-分钟-秒 的形式function fmt_time (p_days in number) return varchar2as l_da

现实中会有一种计算方法将时间计算为一个浮点数的形式来保存,这个时候就需要将其转为为可以看得懂的 日期格式 PL/SQL 数字化日期
--将用小数形式表示的 日期时间  转化为 天-小时-分钟-秒 的形式
function fmt_time (p_days in number) return varchar2
as
  l_days            number;
  l_hours           number;
  l_minutes         number;
  l_seconds         number;
  l_sign            varchar2(1);
  l_returnvalue     string_util_pkg.t_max_pl_varchar2;
begin

  /*

  Purpose:    get time formatted as days, hours, minutes, seconds

  Remarks:

  Who     Date        Description
  ------  ----------  -------------------------------------
  MBR     18.12.2006  Created

  */
  --通过传入的 日期获得相应的 各个单位数据
  --整数部分为 天
  l_days := nvl(trunc(p_days),0);
  --小数部分 *24 得到小时
  l_hours := nvl(((p_days - l_days) * 24), 0);
  --获得的小时 数据的小数部分 *60 为分钟
  l_minutes := nvl(((l_hours - trunc(l_hours))) * 60, 0);
  --同样的 将获得的 分钟的小数部分*60 为秒
  l_seconds := nvl(((l_minutes - trunc(l_minutes))) * 60, 0);
  --判断日期正负 符号
  if p_days < 0 then
    l_sign:='minus ';
  else
    l_sign:='';
  end if;
  --将得到的数据 进行格式化  绝对值是为了进行必要的 去除正负号判定
  --获得天的绝对值
  l_days:=abs(l_days);
  --获得小时的绝对值 同时获得其整数部分
  l_hours:=trunc(abs(l_hours));
  --去取分钟的绝对值 然后四舍五入
  l_minutes:=round(abs(l_minutes));
  --去取秒的绝对值 然后四舍五入
  l_seconds:=round(abs(l_seconds));
  --如果分钟 为60  为什么会出现这种情况呢? 这是因为有了四舍五入和小数 不精确所致
  if l_minutes = 60 then
    --则 让小时+1 同时分钟置空
    l_hours:=l_hours + 1;
    l_minutes:=0;
  end if;
  --将得到的结果 进行格式化输出
  --采用 天-》小时-》分钟的判断顺序 是为了 能够决定那个 字段木有值
  if l_days > 0 then
    l_returnvalue:=string_util_pkg.get_str('%1 days, %2 hours, %3 minutes', l_days, l_hours, l_minutes);
  elsif l_hours > 0 then
    l_returnvalue:=string_util_pkg.get_str('%1 hours, %2 minutes, %3 seconds', l_hours, l_minutes, l_seconds);
  elsif l_minutes > 0 then
    l_returnvalue:=string_util_pkg.get_str('%1 minutes, %2 seconds', l_minutes, l_seconds);
  else
    l_returnvalue:=string_util_pkg.get_str('%1 seconds', l_seconds);
  end if;
  --加上 符号
  l_returnvalue:=l_sign || l_returnvalue;

  return l_returnvalue;

end fmt_time;
登入後複製
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1318
25
PHP教程
1269
29
C# 教程
1248
24
微博怎麼能按日期找以前的微博_微博按日期找以前的微博方法 微博怎麼能按日期找以前的微博_微博按日期找以前的微博方法 Mar 30, 2024 pm 07:26 PM

1.先開啟手機網路瀏覽器,搜尋微博網頁版,進入後點選左上角頭像按鈕。 2、然後點選右上角設定。 3.點選設定裡面的版本切換選項。 4.接著在版本切換裡選擇彩版選項。 5.點選搜索,進入搜尋頁面。 6.輸入關鍵字後,點選找人。 7.出來的搜尋完成介面點選篩選。 8.最後在發佈時間欄輸入特定日期後,點選篩選即可。

Hibernate 框架中 HQL 和 SQL 的差異是什麼? Hibernate 框架中 HQL 和 SQL 的差異是什麼? Apr 17, 2024 pm 02:57 PM

HQL和SQL在Hibernate框架中進行比較:HQL(1.物件導向語法,2.資料庫無關的查詢,3.類型安全),而SQL直接操作資料庫(1.與資料庫無關的標準,2.可執行複雜查詢和資料操作)。

全角英文字母轉換為半角形式的實用技巧 全角英文字母轉換為半角形式的實用技巧 Mar 26, 2024 am 09:54 AM

全角英文字母轉換為半角形式的實用技巧在現代生活中,我們經常會接觸到英文字母,在使用電腦、手機等設備時也經常需要輸入英文字母。然而,有時候我們會遇到全角英文字母的情況,而我們需要使用的是半角形式。那麼,如何將全角英文字母轉換為半角形式呢?以下就為大家介紹一些實用的技巧。首先,全角英文字母和數字是指在輸入法中佔據一個全角位置的字符,而半角英文字母和數字則是佔據一

PPT講義列印自動出現的日期進行去除的操作方法 PPT講義列印自動出現的日期進行去除的操作方法 Mar 26, 2024 pm 08:16 PM

1.先說說我剛開始用的方法,或許大家也在用。先是打開【視野】——】備註模版【。 2.打開後確實能看到日期的地方。 3.先選擇它,並把它刪除。 4.刪除後點選【關閉母版檢視】。 5.再開啟列印預覽,發現日期還是在。 6.其實這個日期不是在這個地方刪除的。應該是在【講義母版】那裡。看下圖。 7.找到日期後把它刪除。 8.現在在打開預覽看一下,就沒有這個日期了。註:其實這個方法也很容易記,因為印刷的是講義,所以應該找【講義母版】。

PHP教學:如何將int型別轉換為字串 PHP教學:如何將int型別轉換為字串 Mar 27, 2024 pm 06:03 PM

PHP教學:如何將int型別轉換為字串在PHP中,將整型資料轉換為字串是常見的操作。本教學將介紹如何使用PHP內建的函數將int型別轉換為字串,同時提供具體的程式碼範例。使用強制型別轉換:在PHP中,可以使用強制型別轉換的方式將整型資料轉換為字串。這種方法非常簡單,只需要在整型資料前加上(string)即可將其轉換為字串。下面是一個簡單的範例程式碼

快速了解 PHP 中的 ASCII 數值轉換 快速了解 PHP 中的 ASCII 數值轉換 Mar 28, 2024 pm 06:42 PM

PHP中的ASCII數值轉換是程式設計中常會遇到的問題。 ASCII(AmericanStandardCodeforInformationInterchange)是一種用於將字元轉換為數字的標準編碼系統。在PHP中,我們經常需要透過ASCII碼來實現字元和數字之間的轉換。本文將介紹如何在PHP中進行ASCII數值轉換,並給予具體的程式碼範例。一、將字符

真我 GT Neo6 定檔 5 月 9 日!機圈首場 AI 數位人發表會 真我 GT Neo6 定檔 5 月 9 日!機圈首場 AI 數位人發表會 May 08, 2024 pm 12:49 PM

5月7日,我手機廠商正式宣布,本公司GTNeo6發表會定檔5月9日。我GTNoe6被定位為"性能風暴",旨在攪動中端機風雲。除此之外,該發表會也將是手機圈首場AI數位人發表會。屆時,真我realme副總裁、全球行銷總裁、中國區總裁徐起將以數位人的形式出現在發表會上。數位人徐起根據官方介紹,真我GTNoe6代號為"颶風",更快更強,將挑戰最強第三代驍龍8s旗艦,挑戰同檔最強產品力。日前,真我GTNeo6被發現直接在電商平台上架,部分核心配置曝光,顯示該機不僅搭載了驍龍8s處理器,還支援120W閃充

PHP判斷數字位數的方法及應用 PHP判斷數字位數的方法及應用 Mar 27, 2024 pm 08:21 PM

PHP是一種流行的伺服器端腳本語言,廣泛用於開發網頁應用程式。在Web開發中,經常會遇到需要判斷數字的位數的情況,本文將介紹PHP判斷數字位數的方法及其應用,並提供具體的程式碼範例。一、判斷數字位數的方法在PHP中,判斷一個數字的位數可以透過多種方法實現,以下是常用的幾種方法:使用內建函數strlen():可以直接將數字轉為字串,然後使用strlen()函

See all articles