sql >> データベース >  >> RDS >> Oracle

間隔を分に変換する

    あなたにとってひどいように見えるものは、私には完全に受け入れられるように見えます。間隔で実行できる算術演算のドキュメントを見ると、次のようになります。

    http://download.oracle.com/docs/cd/E11882_01/server.112/e17118/sql_elements001.htm#sthref175

    次に、それらに数値を掛けることができることがわかります。したがって、間隔を24と60に掛けると、日数を抽出することで分数を取得できます。よりコンパクトですが、あなたの見方ではもっとエレガントかどうかは疑問です。

    SQL> create table t (my_interval interval day to second)
      2  /
    
    Table created.
    
    SQL> insert into t
      2  select numtodsinterval(30,'minute') from dual union all
      3  select numtodsinterval(4,'hour') from dual
      4  /
    
    2 rows created.
    
    SQL> select my_interval
      2       , 60 * extract(hour from my_interval)
      3         + extract(minute from my_interval) minutes_terrible_way
      4       , extract(day from 24*60*my_interval) minutes_other_way
      5    from t
      6  /
    
    MY_INTERVAL                    MINUTES_TERRIBLE_WAY MINUTES_OTHER_WAY
    ------------------------------ -------------------- -----------------
    +00 00:30:00.000000                              30                30
    +00 04:00:00.000000                             240               240
    
    2 rows selected.
    

    よろしくお願いいたします。
    ロブ。



    1. MySQLでテーブルを削除するSQLクエリ

    2. SQLServerでBETWEEN演算子を使用する方法

    3. MongoDBまたは他のドキュメント指向データベースシステムをいつ使用するのですか?

    4. MySQLでデータベースまたはテーブルのインデックスを表示するにはどうすればよいですか?