MySQL の日付/時刻タイプの使用

WBOY
リリース: 2016-06-13 12:30:31
オリジナル
998 人が閲覧しました

私はかつて彼と同じチームにいたので、彼の「中世嫌悪的」なアプローチについてはよく知っており、彼の意見の多くに強く同意しますが、よく理解できない点が 1 つあります。私は常に日付/時刻型の使用を避けます。彼が行ったのは、時間関連のフィールドを INT(10) タイプに設定し、UNIX タイムスタンプを使用してそれらを格納することでした。私は個人的にこのアプローチに非常に同意しません:

まず第一に、wiLdGoose の方法と同様の「時間計算」は、本質的には整形間の演算です (そして、この整形は非常に大きくなります)。 、長さは 10)。さらに、タイムスタンプを VARCHAR(10) に設定すると、明らかな効率性の問題が発生します。

時間計算、整形計算、さらには文字列計算の効率については、この記事が非常に具体的です。

第二に、ロジックの運用上の問題があります。これは、特に高精度が必要なプロジェクトで時間タイプを使用する利点です。たとえば、「前の週のデータ」が必要で、「データベースが作成されてから毎週月曜日のデータを取得」する必要がある場合、wiLdGoose 兄弟のメソッドを使用すると、そのような操作の複雑さが想像できるでしょう。

最後に、直感性と非直感性の問題があります。私たちの脳がこの大量のタイムスタンプを直接日付形式に変換しないことは理解できます。それに比べて、時間タイプを直接使用する方が明らかに直感的です (それ自体が時間形式です)。

そして、私の現在のチームは依然として同様の方法を使用しています。私も同様の技術的な内容について長らく議論してきましたが、立場や決定権の問題から未だにチームに私の意見が採用されず、残念です。

MySQL は、当然すぐに制御できるシンプルで高速な DBM として位置づけられていますが、その一方で、それ以上に進まない状況が生まれやすいのです。そのためには、各項目のデータベース設計の詳細に注意を払う必要があります。新しい機能を常に追加する製品は、最終的にはアプリケーション指向です。

最後に、MySQL の日時関数の公式マニュアルを添付します。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート