SQL
?
SQL
è un linguaggio di basi di dati.
Per fare richieste nidificate, distinte e contare i risultati :
SELECT COUNT(oggetto.id)
FROM oggetto
INNER JOIN proprietario ON oggetto.proprietario_id=proprietario.id
WHERE oggetto.id IN (
SELECT DISTINCT oggetto.id
FROM oggetto
INNER JOIN visto ON visto.oggetto_id=oggetto.id
INNER JOIN posto ON posto.id=visto.posto_id
WHERE posto="qualche_posto")
AND NOT IN (
SELECT DISTINCT oggetto.id
FROM oggetto
INNER JOIN visto ON visto.oggetto_id=oggetto.id
INNER JOIN posto ON posto.id=visto.posto_id
WHERE posto="qualche_altro_posto")
AND proprietario.nome="mio_nome"
https://www.mysqltutorial.org/mysql-basics/mysql-subquery/
https://www.w3resource.com/sql/aggregate-functions/count-with-distinct.php