Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Operacja podzbioru MYSQL

Z twojego pseudokodu domyślam się, że chcesz sprawdzić, czy (dynamiczna) lista wartości jest podzbiorem innej listy dostarczonej przez SELECT . Jeśli tak, zostanie wyświetlona cała tabela. Jeśli nie, żadne wiersze nie zostaną pokazane.

Oto jak to osiągnąć:

SELECT *
FROM tb_values
WHERE 
    ( SELECT COUNT(DISTINCT value)
      FROM tb_value
      WHERE isgoodvalue = true
        AND value IN (value1, value2, value3)
    ) = 3

ZAKTUALIZOWANE po wyjaśnieniu OP:

SELECT *
FROM project
  JOIN 
    ( SELECT projectid
      FROM projectTagMap
      WHERE isgoodvalue = true
        AND tag IN (tag1, tag2, tag3)
      GROUP BY projectid
      HAVING COUNT(*) = 3
    ) AS ok
    ON ok.projectid = project.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. Mysql, PHP, wyszukiwanie wielu słów

  2. Konteneryzacja Apache, MySQL i PHP za pomocą Docker

  3. PHP MySQL Query najpopularniejsze w ciągu ostatnich 24 godzin

  4. Jak mogę sprawdzić, ile połączeń MySQL jest otwartych?

  5. Jak zapobiec sytuacji wyścigowej w rezerwacji hoteli online?