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

Como funcionan las restricciones con la clausula WHERE

Estas en el tema de Como funcionan las restricciones con la clausula WHERE en el foro de Mysql en Foros del Web. Buen día, tengo tiempo asiendo consultas a base de datos pero siempre me ha quedado el hueco de como podria hacer una restriccion WHERE mas ...
  #1 (permalink)  
Antiguo 11/05/2012, 13:49
 
Fecha de Ingreso: abril-2008
Mensajes: 316
Antigüedad: 14 años, 2 meses
Puntos: 3
Como funcionan las restricciones con la clausula WHERE

Buen día, tengo tiempo asiendo consultas a base de datos pero siempre me ha quedado el hueco de como podria hacer una restriccion WHERE mas avanzada, por ejemplo:

SELECT * FROM tabla WHERE campo1 IN["1,",3,4,5,6"] AND campo2 = 3 pero si campo2= 3 y campo4 = esto;

Algo asi como usar condiciones en las consultas, tambien que diferencia hay entre usar parentesis entre las condiciones de la consulta, por ejemplo:


SELECT * FROM campo1 = 1 AND (campo2 = "asdf" AND campo3 = "hola") <-- Que pasa aqui??
  #2 (permalink)  
Antiguo 11/05/2012, 14:32
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 15 años, 5 meses
Puntos: 447
Respuesta: Como funcionan las restricciones con la clausula WHERE

Hola Rogeliomx:

No me queda claro cuál es tu duda con respecto a las restricciones que puedes hacer... las restricciones pueden ser tan complejas como necesites, lo único que es necesario es que sean expresiones LÓGICAS, es decir que al evaluarse el resultado sea obtenga como resultado un TRUE o un FALSE. sería necesario que seas más específico con respecto a lo que quieres hacer y con gusto te ayudamos a crear una expresión lógica que cumpla con todos los requerimientos que tengas.

Con respecto a los paréntesis... al igual que en matemáticas, estos sirven para cambiar el orden en que se evalua la expresión lógica... esto viene de la mano con la JERARQUÍA DE OPERADORES. Si recuerdas tus clases de matemáricas no es lo mismo poner 2 + 3 * 5 a (2+3) * 5...

Código:
2 + 3 * 5 = 17                                 (2 * 3) * 5 = 25
de la misma manera, hablando de expresiones lógicas, no es lo mismo poner

Código:
campo1 = 'algo' or campo1 = 'nada' and campo3 = 'todo'
a poner

Código:
(campo1 = 'algo' or campo1 = 'nada') and campo3 = 'todo'
checa esta liga para que observes la jerarquía de los operadores lógicos.

http://dev.mysql.com/doc/refman/5.0/...recedence.html

Ahí podrás observar que el operador AND TIENE MÁS JERARQUÍA QUE EL OPERADOR OR, POR LO TANTO SE EVALUA PRIMERO.

Si continuas con dudas trata de ser más específico con en tus posts, no dejes tan abiertos los temas, pues así es casi imposible darte una respuesta puntual.

Saludos
Leo.

Etiquetas: clausula, funcionan, restricciones, select, tabla, campos
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 23:24.