Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Optimalisasi MySQL dalam memfilter pasangan nilai kunci sebagai catatan

Ini akan memberi Anda apa yang Anda butuhkan... Setiap kondisi klausa "ATAU" di mana, Anda dapat terus menambahkan sebagai item yang memenuhi syarat. Kemudian, cukup sesuaikan klausa "Memiliki" untuk memenuhi jumlah yang sama dengan kriteria yang Anda izinkan...Saya telah menempatkan tabel hubungan terlebih dahulu karena itu akan memiliki set kecocokan yang lebih kecil pada "Nilai" Kota atau nilai tipe.. . Pastikan Anda memiliki indeks pada tabel relasi pada kolom "VALUE".

SELECT STRAIGHT_JOIN
      rel.id_obj
   from 
      relations rel
         join attributes atr
            on rel.id_addr = atr.id
   where 
         ( rel.value = 'Apartment' AND atr.name = 'Type'  )
      or ( rel.value = 'Some City' AND atr.name = 'City' )
   group by 
      atr.id_obj
   having
      count(*) = 2
   limit
      0, 20

Jika Anda ingin semua data objek aktual DARI hasil ini, Anda akan membungkusnya seperti...

select obj.*
   from 
      ( complete SQL statement above ) PreQuery
         join Object obj on PreQuery.id_obj = obj.id



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara mendapatkan templat Django untuk menarik informasi dari dua model berbeda?

  2. Cara mengubah port default mysql dari 3306 menjadi 3360

  3. KESALAHAN:Gagal membangun ekstensi asli permata (mysql2 di Rails 3.2.3)

  4. Kueri dinamis menggunakan nomor variabel argumen IN (p1, p2, p3)

  5. Cara membuat koneksi database baru di Django