Mysql
 sql >> база данни >  >> RDS >> Mysql

INTERSECT в MySQL

Можете да използвате вътрешно свързване, за да филтрирате редове, които имат съвпадащ ред в друга таблица:

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"

Една от многото други алтернативи е in клауза:

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. Актуализирайте стойност на колона, като замените част от низ

  2. Какво е новото с MySQL репликацията в MySQL 8.0

  3. Обработка и регулация на връзката с ProxySQL

  4. Как да получите годината и месеца от дата в MySQL

  5. Динамично създаване на PHP обект въз основа на низ