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

Temukan grup catatan yang cocok dengan beberapa nilai

Anda dapat melakukannya dengan agregasi bersyarat:

select parentid 
from tablename
group by parentid
having sum(case when datavalue = 1 then 1 else 0 end) > 0 and
       sum(case when datavalue = 6 then 1 else 0 end) > 0

Cara lain adalah menggunakan exists :

select distinct parentid
from tablename t1
where exists(select * from tablename where parentid = t1.parentid and datavalue = 1) and
      exists(select * from tablename where parentid = t1.parentid and datavalue = 6)

Cara lain adalah menghitung kejadian yang berbeda:

select parentid 
from tablename
where datavalue in(1, 6)
group by parentid
having count(distinct datavalue) = 2



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kinerja operator MySQL IN pada jumlah nilai (besar?)

  2. Bergabung dengan hasil dua kueri mysql

  3. Siapkan Database dan Buat pengguna Hanya-Baca di AWS Redshift dan Mysql

  4. Data Hirarki - Model Kumpulan Bersarang:MySql

  5. Bagaimana cara menangani tanda kutip tunggal di dalam kueri SQL di PHP?