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

Masalah saat mengambil catatan dengan array kosong

Di Rails 4 Anda dapat menggunakan User.where.not(id: []) yang akan memberi Anda hasil yang benar. Ini menghasilkan:

SELECT "users".* FROM "users" WHERE (1 = 1)

Sayangnya User.where('id NOT IN (?)', []) harus setara tetapi tidak. Itu masih memberi Anda hasil yang salah:

SELECT "users".* FROM "users" WHERE (id NOT IN (NULL))

Referensi:

  • https://github.com/rails/rails/issues/778
  • https://github.com/rails/arel/commit/cbff1bcf
  • https://github.com/rails/rails/pull/8332
  • https://github.com/rails/rails/commit/8d02afeaee8993bd0fde69687fdd9bf30921e805


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menentukan OID tabel di Postgres 9.1?

  2. ScaleGrid PostgreSQL di VMware Cloud Infrastructure

  3. Kolom MySQL dengan DEFAULT NULL - pilihan gaya, atau bukan?

  4. Periksa apakah NULL ada di array Postgres

  5. Rata-Rata Bergerak berdasarkan Stempel Waktu di PostgreSQL