0

我想在 MySql 中创建一个表,其中有一列Time


时间列的值必须接受9AM to 10PM

+-----------------------------+
| DATE                        |
+-----------------------------+
| 9AM to 10PM                 |
+-----------------------------+
  • 我应该使用哪种数据类型?
  • 如果我不想使用 varcar & 如果我可以使用TIME data-type-如何在那里表示值?
  • 我正在寻找创建表和插入语句作为上述规范的答案?

我是新手,所以请轻松回答

谢谢 !

4

4 回答 4

0
 Use Time Data Type to save Time.
于 2013-10-07T04:48:27.757 回答
0

You can not insert 9AM to 10PM in datetime datatype column.

you have to use datatype whose representation should be like string, like varchar.

于 2013-10-07T04:48:35.827 回答
0

正如上面评论中所建议的,表结构将是:

Create Table YourTable
(
FromTime Time,
ToTime Time
)

现在插入如下值:

Insert into yourTable
VALUES(TIME(STR_TO_DATE('09:00 AM', '%h:%i %p')),TIME(STR_TO_DATE('10:00 PM', '%h:%i %p')))
于 2013-10-07T04:56:07.493 回答
0

根据您所描述的内容,很难准确地说出您需要什么——如果您能提供更多背景信息,我们或许可以为您提供更多见解?

但正如@rkp 所提到的,如果您希望将时间间隔表示为“上午 9 点到晚上 10 点”,则必须使用某种形式的字符串/文本字段,例如 varchar

或者,根据您计划如何使用此数据,您还可以使用两个字段 - 一个用于开始时间,一个用于结束时间。然后可能会建议您使用日期时间字段,因为这将提供更大的灵活性(例如,在计算时间段之间的差异等时)

供参考 - 这些是您的选择:

http://dev.mysql.com/doc/refman/5.0/en/date-and-time-types.html

于 2013-10-07T04:56:08.353 回答