PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

rails postgres ERROR:sintaks input tidak valid untuk tipe presisi ganda

Di PostgreSQL, ekspresi extract(day from time_from) mengembalikan sejumlah tipe ganda, mewakili hari dalam sebulan. Sabtu jelas bukan dobel yang valid.

Jika Anda memerlukan argumen ke where() untuk mencocokkan string 'Sabtu' (untuk mencocokkan hari dalam seminggu), lalu gunakan to_char() fungsi.

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

Anda membutuhkan trim() , karena panggilan semacam ini ke to_char() diisi hingga 9 karakter.

Kasus penting untuk argumen 'Hari'. Jika Anda memasukkannya sebagai 'hari', nilai yang dikembalikan tidak akan cocok dengan 'Sabtu'. Sebagai gantinya, ekspresi seperti to_char(time_from, 'day') akan mengembalikan sesuatu seperti 'saturday'.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hasilkan nilai DEFAULT dalam CTE UPSERT menggunakan PostgreSQL 9.3

  2. postgres pengguna meluncurkan proses yang menggunakan semua CPU 100% penggunaan

  3. Mencatat kueri lambat di instance PostgreSQL Google Cloud SQL

  4. Setara dengan tabel deskripsi di PgAdmin3

  5. Tuple tidak dimasukkan secara berurutan dalam tabel database?