Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Comparacion binaria en query

Estas en el tema de Comparacion binaria en query en el foro de Mysql en Foros del Web. Hola. Tengo un campo en donde almaceno el valor entero de un conjunto de switches es decir, suponiendo que tengo accesos a 4 secciones del ...
  #1 (permalink)  
Antiguo 14/11/2006, 11:54
Avatar de iandrade  
Fecha de Ingreso: septiembre-2006
Ubicación: Xalapa, Veracruz, MÉXICO.
Mensajes: 171
Antigüedad: 17 años, 6 meses
Puntos: 6
Comparacion binaria en query

Hola.

Tengo un campo en donde almaceno el valor entero de un conjunto de switches es decir, suponiendo que tengo accesos a 4 secciones del sistema y necesito que un usuario solo ingrese a la seccion 1 y a la 4 pondria el valor

1001 = 9 entonces almaceno en el campo el valor 9

para acceder a todas pondria:

1111 = 15 entonces almaceno en el campo el valor 15

Ahora con esto no tengo problemas.


El problema es que quiero desde una consulta traer todos lus usuarios que tengan acceso a la seccion 1 del sistema (0001 = 1)

y la consulta me deberia de regresar los dos ejemplos anteriores

ahora sé:
  • que si se realiza una operacion binaria AND puede obtenerse 1 and campo (campo and 1) deberia de traerlo, pero no es asi
  • existe una operacion llamada BINARY pero solo lo hace para caracteres

Cualquier ayuda bienvenida

Última edición por iandrade; 14/11/2006 a las 11:55 Razón: Error en operacion
  #2 (permalink)  
Antiguo 14/11/2006, 12:58
Avatar de iandrade  
Fecha de Ingreso: septiembre-2006
Ubicación: Xalapa, Veracruz, MÉXICO.
Mensajes: 171
Antigüedad: 17 años, 6 meses
Puntos: 6
Jeje ya lo solucione mi problema era que en la consulta empleaba el AND o su equivalente && pero para comparacion binaria es solo el &
queda asi

Código PHP:
$sqlConsulta "select * from acceso where modulos & 1" 

Aqui lo dejo por si le sirve a alguien
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:45.