2012-05-11 1 views
1

Je continue d'obtenir une erreur en essayant d'implémenter DATE_DIFF dans mySQL.Erreur avec DATE_DIFF dans mysql

J'essaie d'obtenir le nombre de jours entre "hm_date" et le jour présent, et ont le numéro apparaissent dans un champ différent appelé "total_days".

Faire cela sur côté servier, mon code est d'obtenir une erreur: # 1305 - FONCTION naturan8_41q.DATE_DIFF n'existe pas

SELECT * FROM reg_add WHERE DATE_DIFF(hm_date,total_days) 
+1

ce qui est l'erreur? – AlphaMale

+0

# 1305 - FONCTION naturan8_41q.DATE_DIFF n'existe pas – Erik

Répondre

1

Vous utilisez DATE_DIFF, thats l'erreur. DATEDIFF est le nom de la fonction correcte.

corrigée Requête: SELECT DATEDIFF(curdate(),hm_date) as total_days FROM reg_add.

+0

Qu'est-ce que c'est? # 1064 - Vous avez une erreur dans votre syntaxe SQL; consultez le manuel qui correspond à votre version du serveur MySQL pour la bonne syntaxe à utiliser près de 'comme total_days LIMIT 0, 30' à la ligne 1 – Erik

+0

Encore une fois .... # 1064 - Vous avez une erreur dans votre syntaxe SQL; consultez le manuel qui correspond à votre version du serveur MySQL pour la bonne syntaxe à utiliser près de 'comme total_days LIMIT 0, 30' à la ligne 1 – Erik

+0

Réponse Mis à jour. – AlphaMale

2

DATEDIFF est le nom correct, sans espace (en effet, il est source de confusion et incompatible avec DATE_ADD et DATE_FORMAT)

+0

Merci. Cela a fonctionné mais je n'ai eu aucun résultat dans total_days. Je ne comprends pas pourquoi. – Erik

1
SELECT DATEDIFF(curdate(), hm_date) as total_days FROM reg_add 
+0

# 1064 - Vous avez une erreur dans votre syntaxe SQL; consultez le manuel qui correspond à votre version du serveur MySQL pour la bonne syntaxe à utiliser près de 'comme 'total_days' LIMIT 0, 30' à la ligne 1 – Erik

+0

Veuillez réessayer s'il vous plaît. –