PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

rails postgres ERREUR :syntaxe d'entrée non valide pour le type double précision

Dans PostgreSQL, l'expression extract(day from time_from) renvoie un nombre de type double, représentant le jour du mois. Samedi n'est clairement pas un double valide.

Si vous avez besoin de l'argument where() pour faire correspondre la chaîne 'samedi' (pour faire correspondre le jour de la semaine), puis utilisez le to_char() fonction.

user_calendars.where("trim(to_char(time_from, 'Day')) = ? ", next_day)

Vous avez besoin de trim() , car ce type d'appel à to_char() est complété à 9 caractères.

La casse est significative pour l'argument 'Jour'. Si vous saisissez 'jour', la valeur renvoyée ne correspondra pas à 'samedi'. Au lieu de cela, une expression comme to_char(time_from, 'day') renverra quelque chose comme 'samedi'.