初めて質問させて頂きます。
現在テーブルの中に「時間の長さ」を管理している項目があります。
具体的には
・1時間30分ですと「130」
・10時間15分ですと「1015」
のように管理してあります。
この項目を10進数で表現し、更に時間を単位として算出したい状態です。
例
1時間30分ですと「130」なので「1.5(h)」として算出したいのです。
このように変換できるファンクションを作成しようとしているのですが、なかなかうまくいきません。
今試している方法としては
"時間"と"分"に分けて考えて、"分"は60で除算しようとしています。
それを足しこむ事で、上の例ですと「1 + 0.5 = 0.5」と算出しているのですが
"分"がうまく割り切れない場合の端数処理や例外の場合を考えると
どのようにファンクションを作ればよいか分からなくなってきました。
どなたか良い例を教えて頂けませんでしょうか。
よろしくおねがいします。
No.1
- 回答日時:
> "分"がうまく割り切れない場合の端数処理や例外の場合を考えると
> どのようにファンクションを作ればよいか分からなくなってきました。
ファンクションを作る前に、
割り切れない場合にどういう結果にしたいのかを決めましょう。
>yorozu_ya様
回答ありがとうございます。
方法ばかりを求め目的を忘れておりました。
まずは結果を確認してみます。
端数等の問題を無視した場合の基本的な計算方法は
60で除算という方法で問題ないでしょうか?
もっと良い方法をお気づきであればアドバイスを頂ければ幸いです。
No.2
- 回答日時:
会社によって、15分単位・30分単位 繰り上げ・下げ、などが違うので
端数処理部分は別に作られてはどうでしょうか。多分、入れ子で呼べるはずです。
最低でもNULLエラーはトラップしたほうが良いです。
>t-ka様
回答ありがとうございます。
大変参考になる回答ありがとうございました。
端数処理を求めるファンクションは別として用意したいと思います。
入力単位は確認していましたが
15分単位や30分単位ではなく1分単位での入力を許可しているとの事でした。
そちらに手を入れずに解決する方向で考えてほしいとの事ですので
まずは端数処理の結果の確認をしてみます。
端数等の問題を無視した場合の基本的な計算方法は
60で除算という方法で問題ないでしょうか?
もっと良い方法をお気づきであればアドバイスを頂ければ幸いです。
No.3
- 回答日時:
var/60を var*0.01666666 等、逆数(定数)にした方がよいのでは
"/"は基本除算の商の部分なので・・剰余は"%"
まあ~型を全部あわせれば問題ないと思いますけど。
参考までによろしく!!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 『4色問題③』 2 2022/11/14 00:31
- 建設業・製造業 見積作成(エクセル)について教えて下さい。 2 2023/05/10 13:47
- Excel(エクセル) Excel 時間の引き算でマイナスを表示させることは出来ますか 3 2023/06/14 21:54
- その他(Microsoft Office) 勤務表のエクセル作成で数式を教えてください。 1 2023/01/17 03:27
- 物理学 時間を語るなら、(複数の時間の正体)を知る必要が有る。 1 2023/02/16 22:14
- その他(開発・運用・管理) bashで15分前と現在のエポックタイムの時間を取得したい 2 2023/02/01 19:10
- 物理学 微分方程式の物理現象への適用について 3 2023/05/14 12:22
- Excel(エクセル) 表計算ソフトcalcにおいて、1時間10分を1.1と表記する方法とそれらを集計する方法は? 4 2022/04/06 16:54
- Excel(エクセル) エクセルでの延長表計算式を教えてください 5 2022/12/21 12:20
- その他(ビジネス・キャリア) 日報の実務労働時間の集計について困っています。 2 2023/06/09 19:00
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
Accessの数値から時間に変換する時点で困っています。
その他(データベース)
-
10進法の数を60進法の数に変換するには
数学
-
oracle 文字列 01:45 を時間に変換した
Oracle
-
-
4
Oracle 2つのDate型の値の差を「分」で取得したい
その他(データベース)
-
5
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
6
PostgreSQLのtimestamp型で時間(分)を抽出したい
PostgreSQL
-
7
アクセスのクエリで秒→時間、時間→秒に変換したい
Access(アクセス)
-
8
0.5時間などの時間計算の方法
その他(家事・生活情報)
-
9
文字列を time 型に変換するには。
PostgreSQL
-
10
[MS Access]クエリで変換 hhmm(数値型)⇒hh:mm(日付/時刻型)
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PL/SQL exceptionを呼び出すには?
-
ストアドプロシジャからストア...
-
PL/SQLに関して
-
OracleのTEXT_IOについて
-
INSERT文の書式
-
ストアド実行時のエラー「参照...
-
ROW_NUMBER()を使用したデータ取得
-
ストアドプロシージャからアナ...
-
Accessのマクロでモジュールを...
-
Access VBAで行ラベルが定義さ...
-
likeとsubstrの使いわけについて
-
SQLサーバで和暦から西暦に変換...
-
PL/SQLカーソルの2重FORループ...
-
Statement ignored というエラー
-
sqlplusでヘッダーが付かない
-
Accessの数値から時間に変換す...
-
或るプロシージャの呼び出し元判定
-
エクセルVBAでUserFormを起動し...
-
PL/SQLでのSQL文法
-
全角空白のTRIMができない...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ストアドプロシジャからストア...
-
時間項目を60進数から10進数へ...
-
ストアド実行時のエラー「参照...
-
PL/SQL exceptionを呼び出すには?
-
ROW_NUMBER()を使用したデータ取得
-
ストアドプロシージャからアナ...
-
質問:DBMS_OUTPUTの使用方法
-
PL/SQLで連結(||)と結合(=>)の違い
-
ストアドプロシージャからスト...
-
パッケージ内のファンクション...
-
PL/SQLのファンクションでのOUT...
-
INSERT文の書式
-
PL/SQL 実行中のSID
-
PL/SQLの例外
-
GET_DDLについて
-
Function内に記述したdbms_outp...
-
Oracle: PACKAGE BODY の分割
-
OracleのTEXT_IOについて
-
動的SQL
-
PL/SQLについて
おすすめ情報