您好我正在尝试将月份和日期存储在一个列中。
用例
我将数据转储到mysql中用于报告目的,报告是每月一次。
我稍后会使用Hibernate来检索数据
答案 0 :(得分:0)
关于您希望使用的格式我并不完全清楚,但假设将月份存储为数字后跟日期并以某种分隔符分隔,则可以使用以下内容。只是第二个INSERT语句实际上是你所询问的存储。
尽管如此,如果您有合适格式的原始数据,我建议您使用单个日期时间列进行存储,并在必要时将其拆分为月份和日期,以便稍后恢复使用它的
-- make a table to hold some dates
CREATE TABLE testdates ( thedate DATE DEFAULT NULL) ;
-- make a table to hold just the month and date in one column as requested
CREATE TABLE tbl_month_and_date (the_month_and_date VARCHAR(14) DEFAULT NULL );
-- put some dummy dates into the testdates table
INSERT INTO testdates (thedate)
VALUES
('2017-09-14'),
('2017-10-13'),
('2017-11-27'),
('2017-08-20');
-- insert the month and date into a single column in the tbl_month_and_date table
-- in this case separated my <space> <colon> <space>
INSERT INTO tbl_month_and_date (the_month_and_date)
SELECT CONCAT(MONTH(thedate),' : ', thedate)
FROM testdates;
-- show what is now in tbl_month_and_date
SELECT the_month_and_date
FROM tbl_month_and_date
表tbl_month_and_date的内容现在是
the_month_and_date
9 : 2017-09-14
10 : 2017-10-1
11 : 2017-11-2
8 : 2017-08-20
答案 1 :(得分:0)
最好使用TIMESTAMP进行报告,而不仅仅是日期,月份或两者。