PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

rails postgres ГРЕШКА:невалиден входен синтаксис за тип двойна точност

В PostgreSQL, изразът extract(day from time_from) връща число от тип double, представляващо деня от месеца. Събота очевидно не е валидно двойно.

Ако имате нужда от аргумента на where() за да съответства на низа „събота“ (за да съответства на деня от седмицата), след това използвайте to_char() функция.

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

Имате нужда от trim() , защото този вид извикване на to_char() е подплатен до 9 знака.

Регистърът е важен за аргумента „Ден“. Ако го въведете като „ден“, върнатата стойност няма да съответства на „събота“. Вместо това, израз като to_char(time_from, 'day') ще върне нещо като „събота“.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как работи AT TIME ZONE в PostgreSQL

  2. Postgres now() срещу 'now' във функцията

  3. Индексиране на външни ключове в Postgresql

  4. Как да направите заявка за целочислен масив на postgres през пролетта

  5. Заявката на SQLAlchemy показва грешка Не може да присъедини таблица/избираеми „работни потоци“ към себе си