OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
締切り
済み

時間が早い順番にデータをならべたい

  • すぐに回答を!
  • 質問No.192923
  • 閲覧数32
  • ありがとう数3
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 10% (60/582)

データを入力フォームに入れてもらい、それをDBに入れています。そしてそのデータを一覧画面で表示する仕組みでCGIを作っています。使っている言語はperlです。

一覧画面で表示する際に時間の若い順に表示したいと思っているので、入力フォームにlocaltime関数を使いDBに一緒に格納するようにしました。しかしそこからどのように選定すれば良いのかわからずとまってしまいました。
自分なりに考えた事は下記のことです。

1.年月日時分を合計して数字の多い順番に表示させる
結果 必ず数字が大きくなるとは限らないので失敗
2.1時から12時の値に対して30をプラスして計算する
結果 複雑になりすぎて解らない

という事になってしまっています。どうか時間を若い順に表示させる方法を教えて頂けないでしょうか?お願します。
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全3件)

  • 回答No.1
レベル8

ベストアンサー率 16% (9/55)

年月日時分が 2002年01月05日14時00分だとしたら、 12桁の数字として扱って、 200201051400とすれば、必ず時間が遅くなれば数字は大きくなると思うんですけど ...続きを読む
年月日時分が
2002年01月05日14時00分だとしたら、
12桁の数字として扱って、
200201051400とすれば、必ず時間が遅くなれば数字は大きくなると思うんですけど
お礼コメント
aeic

お礼率 10% (60/582)

回答して頂きありがとうございます。
2002年01月05日14時00分と
2002年01月06日1時00分はどちらが数字が大きい事になるのでしょうか?
馬鹿ですいません。
頭が混乱しています。
投稿日時 - 2002-01-05 15:08:27


  • 回答No.2
レベル11

ベストアンサー率 28% (122/425)

Long秒に変換されるのが良いのですが...。 年月日時分秒を秒の単位で表現します。 こうすると、大小の比較も簡単に出来ますよ。 本当はうるう年等を考慮して作るのが普通ですが、 一番簡単な式は、 秒=(((年-「年のオフセット値(例えば2000)」*372+月*31+日)*24+時)*60+分)*60+秒 と成ります。 これで、大小の比較は出来る思います。(秒差の比較は出来ません ...続きを読む
Long秒に変換されるのが良いのですが...。

年月日時分秒を秒の単位で表現します。
こうすると、大小の比較も簡単に出来ますよ。

本当はうるう年等を考慮して作るのが普通ですが、
一番簡単な式は、
秒=(((年-「年のオフセット値(例えば2000)」*372+月*31+日)*24+時)*60+分)*60+秒
と成ります。

これで、大小の比較は出来る思います。(秒差の比較は出来ませんので、それが必要な場合は、正しくうるう年計算をしましょう。)
  • 回答No.3
レベル8

ベストアンサー率 16% (9/55)

2002年01月05日14時00分と2002年01月06日1時00分では 2002年01月05日14時00分は、 200201051400 2002年01月06日1時00分は、200201060100 で、2002年01月06日1時00分がおおきくなります。 年は4桁、その他の月日時分はすべて、2桁で扱ってください。
2002年01月05日14時00分と2002年01月06日1時00分では

2002年01月05日14時00分は、 200201051400
2002年01月06日1時00分は、200201060100
で、2002年01月06日1時00分がおおきくなります。

年は4桁、その他の月日時分はすべて、2桁で扱ってください。
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ