【发布时间】:2020-10-13 01:55:17
【问题描述】:
我正在使用 Microsoft SQL Server Management Studio 来完成我的查询。
我查到的获取日期格式和时间格式的资料是:
SELECT FORMAT (GETDATE(), 'dd-MM-yyyy') AS date
SELECT FORMAT(GETDATE(), 'HH:mm') AS time
它采用当前日期和时间并以我需要的格式呈现给我,但我想知道如何将其应用于我正在创建的表中的数据?
这是我目前拥有的:
CREATE TABLE Schedule
(
movieID INT,
screeningID INT,
date DATE,
time TIME,
FOREIGN KEY (movieID) REFERENCES Movie (movieID),
FOREIGN KEY (screeningID) REFERENCES MovieScreening (screeningID)
);
这是我要插入的数据:
INSERT INTO Schedule VALUES (1, 1, '14-03-2020', '11AM')
INSERT INTO Schedule VALUES (2, 2, '14-03-2020', '12PM')
INSERT INTO Schedule VALUES (3, 3, '14-03-2020', '1PM')
INSERT INTO Schedule VALUES (4, 4, '14-03-2020', '2PM')
INSERT INTO Schedule VALUES (5, 5, '14-03-2020', '3PM')
INSERT INTO Schedule VALUES (6, 6, '14-03-2020', '4PM')
INSERT INTO Schedule VALUES (7, 7, '14-03-2020', '5PM')
INSERT INTO Schedule VALUES (8, 8, '14-03-2020', '6PM')
INSERT INTO Schedule VALUES (9, 9, '14-03-2020', '7PM')
INSERT INTO Schedule VALUES (10, 10, '14-03-2020', '8PM')
INSERT INTO Schedule VALUES (1, 11, '15-03-2020', '11AM')
INSERT INTO Schedule VALUES (2, 12, '15-03-2020', '12PM')
INSERT INTO Schedule VALUES (3, 13, '15-03-2020', '1PM')
INSERT INTO Schedule VALUES (4, 14, '15-03-2020', '12PM')
INSERT INTO Schedule VALUES (5, 15, '15-03-2020', '3PM')
INSERT INTO Schedule VALUES (6, 16, '15-03-2020', '4PM')
INSERT INTO Schedule VALUES (7, 17, '15-03-2020', '5PM')
INSERT INTO Schedule VALUES (8, 18, '15-03-2020', '6PM')
INSERT INTO Schedule VALUES (9, 19, '15-03-2020', '7PM')
INSERT INTO Schedule VALUES (10, 20, '15-03-2020', '8PM')
这是我在测试格式代码并选择上面创建的表时得到的输出。
我一直在尝试自己解决这个问题,并在网上搜索可以应用于我自己工作的解决方案,但我可以寻求一些帮助,因为我有点迷路了。
编辑:所以我评论了其中一个答案,我只想澄清我的用例以及将日期和时间分开的原因。
所以我的用例是电影时间表,我需要将日期和时间分开,以便可以进行搜索查询以查找与特定时间或特定日期相关的详细信息,因为时间表具有确切的每天都有相同的时间表,我需要它们作为单独的数据类型。我在这个数据库中有五个表,还有两个链接到这个计划表的表;一个是电影列表,另一个包含电影放映详细信息,例如票价、电影 ID 和剧院 ID,该 ID 将表格与剧院列表和有关这些剧院的信息联系起来。
如果有帮助 here 是我在 excel 中创建数据库表之前创建的数据模型,但我遇到的唯一问题是让我的日期和时间以我想要的方式显示。
我希望能够调用数据,例如:
SELECT Schedule.movieID, Schedule.time
FROM Schedule
WHERE (Schedule.time = '11AM')
当我运行它时,我得到一个看起来像 this. 的返回表
如果时间列将数据返回为 'hh:mm' 我更愿意,我只是不确定如何让它做到这一点,是否有一个时间数据类型只会返回 'hh:mm' ?
【问题讨论】:
-
因为你是新手,只是检查你是否熟悉该做什么when someone answers
标签: sql sql-server date time format