sql >> Databáze >  >> RDS >> Mysql

Operace podmnožiny MYSQL

Z vašeho pseudo kódu usuzuji, že chcete zkontrolovat, zda (dynamický) seznam hodnot je podmnožinou jiného seznamu poskytovaného pomocí SELECT . Pokud ano, zobrazí se celá tabulka. Pokud ne, nezobrazí se žádné řádky.

Zde je návod, jak toho dosáhnout:

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

AKTUALIZOVÁNO po vysvětlení 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. Jak vyrobit fantomové čtení?

  2. Ukládání šifrovaných dat v Postgresu

  3. Přidání více značek na Google Maps z databáze MySQL

  4. Shrňte data do nové tabulky