The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

CREATE TABLE aus_user_ancestors (
    user_id     INT NOT NULL,
    ancestor    INT NOT NULL,
    degree      INT NOT NULL,
    
    FOREIGN KEY (user_id)
        REFERENCES      aus_user (id)
        ON UPDATE CASCADE
        ON DELETE CASCADE,
        
    FOREIGN KEY (ancestor)
        REFERENCES      aus_user (id)
        ON UPDATE CASCADE
        ON DELETE CASCADE,
    
    PRIMARY KEY (user_id, ancestor, degree)
);

CREATE INDEX aus_user_ancestors_ancestor ON aus_user_ancestors (ancestor);