2011-11-13 25 views
-1

今はSQLを使い始めました。いくつかのテーブルでいくつかの情報を表現する必要があります。日付と時間は2つあります。 varchar()またはnumeric()よりも日付と時刻を表すデータ型が優れているかどうかを知りたいと思います。 日付と時刻を表すSQLプリミティブはありますか?SQLの日付と時刻のデータ型

+3

SQLの方言これが異なるよう? – Mark

答えて

1

に(他のすべてと共に)について説明します。

正確な構文は、RDMSベンダーに依存しますが、ここでは非常に人気ののMicrosoft SQL Serverのオラクル(以前日)MySQLののためのいくつかの例があります。

MySQLはデータベースに日付または日付/時刻値を格納するための次のデータ型が付属しています:

  • DATE - フォーマットYYYY-MM-DD
  • DATETIME - 形式:YYYY-MM-DD HH:MM:SS
  • TIMESTAMP - 形式:YYYY-MM-DD HH: MM:SS
  • YEAR - フォーマットYYYYまたはYY

SQL Serverがデータベースに日付または日付/時刻値を格納するための次のデータ型が付属しています:

  • DATE - フォーマットYYYY -MM-DD
  • DATETIME - 形式:YYYY-MM-DD HH:MM:SS
  • SMALLDATETIME - 形式:YYYY-MM-DD HH:MM:SS
  • TIMESTAMP - 形式:一意の番号

他のデータベースの実装を検索することもできます。例:

"Oracle日付時刻データ型のSQL"

あなたは見つけるかもしれない:

+0

MySQLには 'TIME'データ型もあります:http://dev.mysql.com/doc/refman/5.1/en/date-and-time-types.html –

+1

SQL-Server 2008にもいくつかの追加データ型がありますが、 ** 'timestamp' **はありません:http://msdn.microsoft.com/en-us/library/ms187752.aspx –

+0

' datetimeoffset'を意味しない限り:http://msdn.microsoft.com/ en-us/library/bb630289.aspx –

0

それはあなたが作業しているどの味もよるが、SQLのオファー日、smalldate、日時、のDateTimeOffsetのほとんどのバリエーションなど

それは本当にちょうどあなたが日付を表示したいかに依存しており、どれくらいの情報を表示したいのですか?

最も一般的な形態は、はい、ほとんどのSQLデータベース実装の日時特定のデータ型が存在する日時であり、MSDN Transact-SQL

+0

おかげさまでフェニックス、私はそれを試してみようとdatetimeでそれがどのように行くのを見てテストするつもりです。 –