sql >> Database teknologi >  >> RDS >> Mysql

Hvordan vælger man forskellige par i MySQL join (samme tabel) med transitivitet?

Gruppér kun på den ene side, og tag MIN() af den anden:

SELECT   MIN(a.ID) a, b.ID b
FROM     mytable a JOIN mytable b ON b.text = a.text AND b.ID > a.ID
GROUP BY b.ID

Se den på sqlfiddle .




  1. Hvad er forskellen mellem RANK og DENSE_RANK i SQL?

  2. Ulemper ved at gemme et heltal som en streng i en database

  3. Brug af en variabel som kolonnenavn i en mysql-forespørgsel

  4. LOAD DATA LOKAL INFIL forbudt i... PHP