我刚刚开始使用SQL;我需要在一些表中表示一些信息,日期和时间是其中两个。 我想知道,如果有更好的数据类型来表示日期和时间而不是varchar()或numeric()。 是否有任何SQL原语来表示日期和时间?
答案 0 :(得分:1)
是的,大多数SQL数据库实施都有特定于日期时间的数据类型。
确切的语法取决于RDMS供应商,但以下是非常流行的 Microsoft SQL Server 和 Oracle(以前的Sun)MySQL 的一些示例。
MySQL附带以下数据类型,用于在数据库中存储日期或日期/时间值:
- 日期 - 格式YYYY-MM-DD
- DATETIME - 格式:YYYY-MM-DD HH:MM:SS
- TIMESTAMP - 格式:YYYY-MM-DD HH:MM:SS
- 年 - 格式YYYY或YY
SQL Server附带以下数据类型,用于在数据库中存储日期或日期/时间值:
- 日期 - 格式YYYY-MM-DD
- DATETIME - 格式:YYYY-MM-DD HH:MM:SS
- SMALLDATETIME - 格式:YYYY-MM-DD HH:MM:SS
- TIMESTAMP - 格式:唯一编号
或者您可以搜索其他数据库实现。例如:
“Oracle日期时间数据类型sql”
你可能会发现:
答案 1 :(得分:0)
这取决于您使用的风格,但SQL的大多数变体提供date,smalldate,datetime,datetimeoffset等。
这实际上取决于您希望如何显示日期,以及您希望显示多少信息。
最常见的形式是日期时间,并在MSDN Transact-SQL
解释(以及所有其他内容)