Keresés

Aktív témák

  • LW

    őstag

    válasz LW #1849 üzenetére

    Normális megoldást azóta sem találtam, csak gányoltam kicsit. :DDD

    SELECT rights.rgt_mod_id, rights.rgt_val
    FROM users
    LEFT JOIN mtm_gr_u ON mtm_gr_u.u_id = users.u_id
    LEFT JOIN groups ON mtm_gr_u.gr_id = groups.gr_id
    LEFT JOIN mtm_rgt_gr ON mtm_rgt_gr.gr_id = groups.gr_id
    LEFT JOIN rights ON mtm_rgt_gr.rgt_id = rights.rgt_id
    WHERE users.u_id = 1 and rights.rgt_id not IN(
    SELECT rights.rgt_id
    FROM users
    LEFT JOIN mtm_rgt_u ON mtm_rgt_u.u_id = users.u_id
    LEFT JOIN rights ON mtm_rgt_u.rgt_id = rights.rgt_id
    WHERE users.u_id = 1 and mode = "deny")
    UNION
    SELECT rights.rgt_mod_id, rights.rgt_val
    FROM users
    LEFT JOIN mtm_rgt_u ON mtm_rgt_u.u_id = users.u_id
    LEFT JOIN rights ON mtm_rgt_u.rgt_id = rights.rgt_id
    WHERE users.u_id = 1 and mode = "allow" and rights.rgt_id NOT IN(
    SELECT rights.rgt_id
    FROM users
    LEFT JOIN mtm_rgt_u ON mtm_rgt_u.u_id = users.u_id
    LEFT JOIN rights ON mtm_rgt_u.rgt_id = rights.rgt_id
    WHERE users.u_id = 1 and mode = "deny")

Aktív témák