sql >> Databasteknik >  >> RDS >> Sqlserver

Hur man beskär dubbletter av associationer för att ge en unik mest komplett uppsättning

Problemet motsvarar att hitta en maximal matchning i en tvådelad graf . Varje kolumnelement representerar en vertex, varje rad representerar en kant. Den länkade Wikipedia-artikeln ger några tips på algoritmer för att lösa detta problem. Det finns en implementering av den ungerska algoritmen i Googles or-tools-bibliotek .

Här är det givna exemplet formulerat som en graf, där de röda kanterna representerar den givna lösningen:

Det skulle vara förvånande för mig om du kunde hitta en lösning enbart i SQL.



  1. Hur förfinar man utdata som kommer från SELECT-frågan i kommandotolken?

  2. Lär dig Oracle, ställer in boolean baserat på datum

  3. Mysql INTE IN och INTE FINNS samma sak?

  4. Skapa en Inline Table-Valued Function (ITVF) i SQL Server