2015-07-06 2 views
3

Вот как моя колонка выглядитMYSQL синтаксиса Дата запроса не отформатирован

deeday 
"06/07/15" 
"02/07/15" 
"06/07/15" 
"04/07/15" 
"06/07/15" 

Следующий запрос работает хорошо

SELECT * FROM Bango ORDER BY STR_TO_DATE(`deday` , '%y/%m/%d') 

Что я отсутствующей в следующем запросе, чтобы заставить его работать.

SELECT * FROM `Bango` WHERE STR_TO_DATE(`deday` , '%y/%m/%d') = DATE_FORMAT(NOW(),'%d/%m/%y') 

Благодаря

ответ

0

Ваш запрос может работать как на ценам ниже

SELECT * FROM `Bango` WHERE STR_TO_DATE(`deday` , '%d/%m/%y') = curdate(); 

Вы можете использовать в соответствии с ниже, но это будет убить производительность, так что вы можете удалить "из вашего поля один по времени

SELECT * FROM 
`Bango` 
WHERE STR_TO_DATE(replace(`deday`,'"','') , '%d/%m/%y') = curdate(); 
+0

Спасибо Zafar, но, как ни странно, ошибок нет и по-прежнему нет результатов для обоих запросов. На что я должен смотреть? –

+0

Даже «код» SELECT * от футбола ORDER BY STR_TO_DATE ('deday', '% d /% м /% г' 'код' работает –

+0

, что тип данных столбца deday –

0

SQL LIKE Statement on a DateTime Type

Если тип столбца DateTime Одноименные оператор не работает без преобразования значения в строку VARCHAR на лету.

+0

Спасибо для подсказки, как насчет использования оператора a = в запросе? –

+0

Забыл упомянуть, что формат в базе данных - varchar. –