У меня есть столбец INT в базе данных SQL Server, в котором хранится значение, относящееся к перечислению флага бит. Например, если перечисление:
[Flags()]
public enum UserType
{
    StandardUser = 1,
    Admin = 2,
    SuperUser = 4
}
тогда столбец в SQL Server может содержать значение 5.
Что мне нужно сделать, так это выбрать все строки из другой таблицы, содержащие дополнительные сведения о UserType, поэтому, используя пример значения 5, я хотел бы выбрать строки из второй таблицы с идентификаторами 1 и 4.
Кто-нибудь знает умный способ сломать номер таким образом - в идеале метод должен быть рекурсивным до некоторой степени, поскольку это очень упрощенный пример, а фактические таблицы/перечисления намного больше.