I am here for share the solution of a MySQL problem.
If you want to change the data type of a column from varchar or any other one to date, you should need to use following query-
UPDATE `tbl` SET `date1` = STR_TO_DATE(`date1`, '%d-%m-%Y') WHERE 1=1
For example if you have a table 'user' and a column 'dob' and the values in this column with the data type 'varchar' and pattern '29/MAY/15' and you want to change the column in to 'DATE'. You should need to use following query -
UPDATE `user` SET `dob` = STR_TO_DATE(`dob`, '%d/%M/%y') WHERE 1=1