タグ付けされた質問 「date-format」

17
「ファジー日付」をどのようにデータベースに保存しますか?
これは私が何度か遭遇した問題です。データベーステーブルに保存するレコードがあるとします。このテーブルには、「date_created」というDateTime列があります。この特定のレコードはかなり前に作成されたものであり、正確な日付は確かではありませんが、年と月はわかっています。あなたが年だけ知っている他の記録。日、月、年を知っているその他の記録。 「1978年5月」は有効な日付ではないため、DateTimeフィールドは使用できません。複数の列に分割すると、クエリを実行できなくなります。他の誰かがこれに遭遇しましたか?もしそうなら、どのようにそれを処理しましたか? 私が構築しているシステムを明確にするために、それはアーカイブを追跡するシステムです。かなり前に作成されたコンテンツもありますが、知っているのは「1978年5月」だけです。1978年5月1日として保存することもできますが、この日付が月に対してのみ正確であることを示す何らかの方法があります。その方法で、数年後、そのアーカイブを取得するときに、日付が一致しない場合でも混乱しません。 私の目的では、「1978年5月の不明な日」と「1978年5月1日」を区別することが重要です。また、ほとんどのデータベースシステムでは無効な日付値として拒否されるため、「1978年5月0日」のように不明な値を0として保存したくないでしょう。

14
プログラミングで、デフォルトの日付形式がYYYYMMDDであり、他の形式ではない技術的な理由はありますか?
エンジニアリングの理由はありますか?RDBMSの場合、「YEAR」は「MONTH」よりも具体的であるため、パフォーマンスと関係があるのではないかと思っていました。たとえば、2000年は1年しかありませんが、毎年「1月」これにより、年ごとに何かを簡単にフィルタリング/ソートできるようになります。そのため、年が最初になります。 しかし、それが本当に意味をなすかどうかはわかりません...何か理由はありますか?


12
番号のローカリゼーションは不要ではありませんか?
このページを読んだばかりですhttp://weblogs.asp.net/scottgu/archive/2010/06/10/jquery-globalization-plugin-from-microsoft.aspx 彼らがしたことの1つは、アラビア語の日付をアラビア語のカレンダーに変換することでした。そうするのは良い考えかどうか疑問に思っています。(ユーザーがアラビア語であっても)ユーザーにとって実際に迷惑/混乱するでしょうか。 また、2番目の質問は、ドイツ語などの一部の文化では33,899.99を33.899,99に変更する必要があるのか​​ということです。ライブラリがすでにそれを行っているので、そうすることは害になりませんが、これは実際にユーザーにもっと混乱を引き起こさないでしょう(たとえ彼がドイツ人であっても)。 私はこれらの人々がどのような文化から来たにせよ、33,899.99の数字を与えたとしても、あなたが間違ったことをする方法はないでしょうか?(私のウェブサイト/アプリケーションがあなたがあなたの人生でこれまでに使った最初のウェブサイト/アプリケーションでない限り、おそらくそれは可能ですが、確率はそれだけです) 私は、誰もがそれが何を意味するのかを見て、知っているフォーマットとして「ユニバーサル」を意味しました。白黒などで書かれた標準である必要はありません。誰もがそれを読んで、テキストが何を表しているのか混乱せずにすぐに知ることができる限り、それは普遍的です。確かに、1.234,00は間違いなく普遍的ではありません。私は、あなたが一生ずっと、コンピューターを使っていて、この数字形式にまったく出会ったことがない人を見つけることができると確信しています。ほとんどのWebサイト/アプリは、ローカライズに対応するために変更なしで1,234.00を使用していたため、事実上の(すべての人がそれを見て理解できる普遍的な形式)と考えています。 日付に関しては、01/02/03を書くと、誰がそれを知るか(一義的で、すぐに、あいまいさなしに)日付が何であるかはわかりません。しかし、2003年1月2日、2003年2月1日、2001年2月3日など、私たちがそれらを書いたとしても、だれもが間違っていることはないでしょうか? この質問はローカライズを対象としていますが、「誰もが英語を読めるとは限りません!」それは国際化の問題だからです(このトピックを超えています)。ローカリゼーションに関する議論に固執しましょう。

4
データベースの日付データ型の十字軍について:有効ですか?価値がある?他の誰かがそれを感じますか?
SOに関するSQLの質問に答えるのに多くの時間を費やしています。私はこのilkのクエリに頻繁に出くわします: SELECT * FROM person WHERE birthdate BETWEEN '01/01/2017' AND '01/03/2017' SELECT * FROM person WHERE birthdate BETWEEN '2017-01-01' AND '2017-03-01' SELECT * FROM person WHERE birthdate BETWEEN 'some string' AND 'other string' つまり、指定されたパラメータの文字列から日付への暗黙的な変換(不良)に依存するか、データベースがx、000,000個のデータベース行値を文字列に変換し、文字列比較を実行します(悪い) 私は時々コメントをします。特に、スマートな回答を書くのが高回答ユーザーである場合、私は本当に自分のデータ型でだらしない/文字列を入力するべきではないと思う人 コメントは通常、to_date(Oracle)、str_to_date(MySQL)、convert(SQLSERVER)、または同様のメカニズムを使用して、文字列を明示的に日付に変換した方が良いと思われる形式を取ります。 --oracle SELECT * FROM person WHERE birthdate BETWEEN TO_DATE('20170101', 'YYYYMMDD') AND TO_DATE('20170301', 'YYYYMMDD') --mysql …

7
「時間の終わり」の定数はありますか?
一部のシステムでは、時間値9999-12-31が、コンピューターが計算できる時間の終わりとして「時間の終わり」として使用されます。しかし、それが変化したらどうなるでしょうか?今回は組み込み変数として定義する方が良いと思いませんか? Cおよびその他のプログラミング言語では、通常MAX_INT、整数が持つことのできる最大値を取得するための変数などがあります。MAX_TIME多くのシステムで通常9999-12-31である「時間の終わり」に変数を設定するために、同様の機能がないのはなぜですか。間違った年(9999)にハードコーディングする問題を回避するために、これらのシステムは「時間の終わり」に変数を導入できますか? **実際の例** End of validity date: 31/12/9999.(公式文書はこのようにリストされています)ブロガーは、常に一番上にあるページ、ウェルカムページを書きたいと考えています。したがって、可能な限り将来の日付が与えられます。 3000?はい、あなたが直面しているウェルカムページは3000年1月1日に投稿されています。したがって、このページは永久にブログの上部に保持されます=)実際には2007年8月31日に投稿されています。

11
世界中の誰でも理解できる普遍的な日付形式はありますか?
カナダでは、誰もが日付形式に精通していますYYYY-MM-DD。ヨーロッパや南アフリカでは、彼らが好むDD-MM-YYYY。南アフリカから、YYYY-MM-DD日付の形式に戸惑うユーザーがいます。この状況に対処する方法はありますか? 私は次のメソッド形式をすべてに使用することを考えていました: Feb 02, 2011

1
ISO-8601の「kk」と「HH」+1の違いは何ですか?
ISO-8601には複数の時間形式があり、そのうちの1つは1〜24時間の「kk」です。 これの目的は何ですか?時間を相殺した国はありますか?軍事用ですか? Wikipediaの記事は、 HHと株式会社との正確な性質を明らかにしませんでした。私の懸念の主な原因は、SimpleDataFormatterでのフォーマットの動作です。 編集:私が言及しているSimpleDateFormatの直接の部分はこれです: H時間(0〜23)数値0 k時間(1〜24)数値24 使用中... HH:mm:ss // 00:00:00 kk:mm:ss // 01:00:00

3
JAX-RS @PathParamで日付タイプを使用する必要がありますか?
これは、Jerseyを使用してJEE Glassfishサーバーで実行しようとしていることです。 @GET @Path("/{name}/{date}") public String getMessages(@PathParam("name") String name, @PathParam("date") Date date) このRESTfulなWebサービスを利用する人々に「ここの日付はJavaのDateクラスで機能するものなら何でもよい」と伝えることができるというアイデアが気に入っています。これは、Date仕様だけを見ることができるという観点からは非常に単純であり、テストできる動作モデルが既に用意されています。 私が心配している問題は、これを行ったときに、Date()がコンストラクターで取得した内容が気に入らない場合、JAX-RSがあまり良くないことです。Date()は、与えられたものを解析できない場合(実際の日付ではなく「today」という文字列を渡した場合など)にエラーをスローするため、JEEサーバーは404エラーを返します。 これは良い習慣ですか?私が考えていない、これを行うより良い方法はありますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.