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

MySQL wybierz dołącz gdzie ORAZ gdzie

Ten rodzaj problemu jest znany jako podział relacyjny

SELECT Products.* 
FROM Products
JOIN ProductTags ON Products.id = ProductTags.product_id
WHERE ProductTags.tag_id IN (1,2,3)
GROUP BY Products.id /*<--This is OK in MySQL other RDBMSs 
                          would want the whole SELECT list*/

HAVING COUNT(DISTINCT ProductTags.tag_id) = 3 /*Assuming that there is a unique
                                              constraint on product_id,tag_id you 
                                              don't need the DISTINCT*/


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zapytanie aktualizujące MySQLdb w Pythonie kończy się niepowodzeniem

  2. implodowanie listy do użycia w klauzuli MySQLDB IN w Pythonie

  3. PHP i mySQL:Rok 2038 Błąd:Co to jest? Jak to rozwiązać?

  4. Zapobiegaj ponownemu przesłaniu formularza po kliknięciu przycisku Wstecz

  5. MySQL:WYBIERZ UNIKALNĄ WARTOŚĆ