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

INTERSECT w MySQL

Możesz użyć sprzężenia wewnętrznego, aby odfiltrować wiersze, które mają pasujący wiersz w innej tabeli:

SELECT DISTINCT records.id 
FROM records
INNER JOIN data d1 on d1.id = records.firstname AND data.value = "john"
INNER JOIN data d2 on d2.id = records.lastname AND data.value = "smith"

Jedną z wielu innych alternatyw jest in klauzula:

SELECT DISTINCT records.id 
FROM records
WHERE records.firstname IN (
    select id from data where value = 'john'
) AND records.lastname IN (
    select id from data where value = 'smith'
)


  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 łączy się z klauzulą ​​where

  2. Skumulowana suma w zbiorze wierszy w mysql

  3. Wtyczka uwierzytelniania 'caching_sha2_password' nie jest obsługiwana

  4. mysql_num_rows():podany argument nie jest prawidłowym zasobem wynikowym MySQL

  5. Jak obliczyć średnią sprzedaż tygodniową w MySQL?