Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment comparer 2 lignes de la même table (SQL Server) ?

Vous pouvez joindre une table à elle-même autant de fois que vous le souhaitez, c'est ce qu'on appelle une auto-jointure.

Un alias est attribué à chaque instance de la table (comme dans l'exemple ci-dessous) pour les différencier les unes des autres.

SELECT a.SelfJoinTableID
FROM   dbo.SelfJoinTable a
       INNER JOIN dbo.SelfJoinTable b
         ON a.SelfJoinTableID = b.SelfJoinTableID
       INNER JOIN dbo.SelfJoinTable c
         ON a.SelfJoinTableID = c.SelfJoinTableID
WHERE  a.Status = 'Status to filter a'
       AND b.Status = 'Status to filter b'
       AND c.Status = 'Status to filter c'