sql >> Databáze >  >> RDS >> PostgreSQL

Najít všechny spoluautory – mapovací tabulka Faceting/Grouping for many to many

Zkuste toto:

SELECT "AuthorId", COUNT(*)
FROM BookAuthorMapping
WHERE "BookId" IN (SELECT "BookId" FROM BookAuthorMapping WHERE "AuthorId" = 1)
GROUP BY "AuthorId"

Ukázka zde

Alternativně můžete použít INNER JOIN :

SELECT t1."AuthorId", COUNT(*)
FROM BookAuthorMapping AS t1
INNER JOIN BookAuthorMapping AS t2 ON t1."BookId" = t2."BookId" AND t2."AuthorId" = 1
GROUP BY t1."AuthorId"

Ukázka zde



  1. Aktualizace souhrnné tabulky na základě spouštěčů a uložených procedur

  2. Front-end MS-Access nerozpozná data ze serveru SQL Server

  3. TIME_TO_SEC() Příklady – MySQL

  4. Zahrnout konfiguraci a databázi z jiných souborů