Tengo una columna INT
en una base de datos de SQL Server que almacena un valor relacionado con una enumeración de indicador de bit. Por ejemplo, si la enumeración es:Desarmado de enumeraciones de marcas de bit en SQL Server
[Flags()]
public enum UserType
{
StandardUser = 1,
Admin = 2,
SuperUser = 4
}
después la columna en SQL Server puede contener un valor de 5.
Lo que necesito hacer es seleccionar todas las filas de otra tabla que sostiene detalles adicionales sobre el UserType
, así que usando el ejemplo de un valor de 5, me gustaría seleccionar las filas de la segunda tabla con los ID 1 y 4.
¿Alguien conoce una manera ingeniosa de dividir el número de esta manera? el método debe ser recursivo hasta cierto punto, ya que este es un ejemplo muy simplificado, y las tablas/enumeraciones reales son mucho más grandes.
el clavo, gracias :) – Bob