如何通过更改日期格式

问题描述:

查询MySQL数据库这是一个CSV文件,我的表结构如何通过更改日期格式

CREATE TABLE `stock_historic` (
    `name` varchar(30) DEFAULT NULL, 
    `date` varchar(30) DEFAULT NULL, 
    `open` decimal(8,2) DEFAULT NULL 
) ; 

解析,我已插入数据到表中这样

Insert Into stock_historic values('SRF', '20150930' , '11190.00'); 
Insert Into stock_historic values('SRF', '20151001' , '11456.00'); 

但是从前端(Jquery的日期选择器)日期早于这种格式

select * from stock_historic where symbol = "SRF.NS" and startDate = "2015-09-30" and endDate = "2015-10-01" 

http://sqlfiddle.com/#!9/91ac8d/1

请让我知道我可以查询数据库在这种情况下

+0

为什么不把日期选择器中的'-'从datepicker中删除,然后再将它们放入查询中? – Barmar

改变你的表结构和给予日期列另一个名字(date是保留字)和相应的列类型像时间戳或日期

CREATE TABLE `stock_historic` (
    `name` varchar(30) DEFAULT NULL, 
    `opendte` timestamp DEFAULT NULL, 
    `open` decimal(8,2) DEFAULT NULL 
) ; 

现在,您不必为格式而烦恼,只要它不含糊。你所有的例子都应该可以工作。

+0

这工作完美。 – Pawan

格式化jQuery日期选择器的日期,删除破折号。例如:

$("#datepicker").datepicker({ 
    "dateFormat": "yymmdd" 
}); 

我认为这将是在javascript比查询更好的格式,你可以把它直接在您的查询。

+0

谢谢,在这种情况下,实用程序之间的mysql日期如何工作。 – Pawan

+0

如果您想在函数之间使用mysql,请将列的类型更改为“DATE”类型或“DATETIME”类型 – kakajan