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

Wykrywanie relacji między rekordami bazy danych MySQL

Spróbuj tego (powinieneś załadować kilka przykładowych danych do SQLFiddle dla lepszego testowania)

SELECT t1.`name` AS teacher1, t2.`name` AS teacher2, count(*)
FROM teachers AS t1
JOIN teachers AS t2
  ON t1.id > t2.id
JOIN teacher_subjects AS ts1
  ON ts1.teacher_id = t1.id
JOIN teacher_subjects AS ts2
  ON ts2.teacher_id = t2.id
    AND ts2.subject_id = ts1.subject_id
GROUP BY teacher1, teacher2
ORDER BY COUNT(*) DESC;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP — bezpieczne strony tylko dla członków z systemem logowania

  2. Oblicz procentowy wzrost/spadek od wartości poprzedniego wiersza

  3. Jak połączyć się z bazą danych MySQL w PHP za pomocą rozszerzenia mysqli?

  4. java.sql.SQLException:Nie wybrano bazy danych — dlaczego?

  5. Dlaczego executemany jest powolna w Python MySQLdb?