Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Mysql (http://www.forosdelweb.com/f86/)
-   -   Como niego (logicamente) esta consulta ? (http://www.forosdelweb.com/f86/como-niego-logicamente-esta-consulta-531063/)

Italico76 06/11/2007 10:56

Como niego (logicamente) esta consulta ?
 
SELECT * FROM `contenido` WHERE `calificacion`='2'; me devuelve un subconjunto pero quiero el complementario!

Estoy buscando algo como.......

SELECT * FROM `contenido` WHERE `calificacion`!='2'; pero arroja "0 resultados"

Como puede ser ? como debo expresarlo ? gracias!!! :si:

nevergame 06/11/2007 11:29

Re: Como niego (logicamente) esta consulta ?
 
SELECT * FROM `contenido` WHERE `calificacion`< '2' and calificacion > '2';

Italico76 06/11/2007 11:38

Re: Como niego (logicamente) esta consulta ?
 
Cita:

SELECT * FROM `contenido` WHERE `calificacion`< '2' and calificacion > '2';
He probado esto de nevergame pero el resultado es el mismo:

MySQL ha devuelto un valor vacío (i.e., cero columnas). (La consulta tardó 0.0010 seg) :molesto:

Ideas ??? :neurotico

JavierB 06/11/2007 11:39

Re: Como niego (logicamente) esta consulta ?
 
Hola Italico76

Prueba con esto, a ver si te funciona:

SELECT * FROM `contenido` WHERE `calificacion`<> '2';

Saludos, :adios:

Italico76 06/11/2007 11:41

Re: Como niego (logicamente) esta consulta ?
 
Como dato adicional `calificacion` es del tipo smallint(6)

Cita:

Prueba con esto, a ver si te funciona:

SELECT * FROM `contenido` WHERE `calificacion`<> '2';
MySQL ha devuelto un valor vacío (i.e., cero columnas). (La consulta tardó 0.0010 seg)

Otra vez paso lo mismo!!!!!!!!!!!! :(

nevergame 06/11/2007 12:09

Re: Como niego (logicamente) esta consulta ?
 
Veamos la consulta se ejecuta bien el problema es que no hay valores en ese rango

lo que hace la consulta

SELECT * FROM `contenido` WHERE `calificacion`< '2' and calificacion > '2';

es mostrarte todos aquellos valores que sean mayor que dos y menor que dos es decir todos los distintos de 2

prueba a pasar los valores asi 2 y no con las comillas simples pues puede ser motivo que lo interrete como caracter y no como valor ya que como comentas el campo es de tipo smallint(6)

JavierB 06/11/2007 12:14

Re: Como niego (logicamente) esta consulta ?
 
Hola nevergame

Me parece que con tu consulta, es normal que no devuelva ningún registro. Estás pidiendo que un número sea mayor que 2 y, también, menor de 2 :pensando: Quizás utilizando el operador or

Saludos, :adios:

LordCyb3R 06/11/2007 17:24

Re: Como niego (logicamente) esta consulta ?
 
Prueba esta,

SELECT * FROM contenido WHERE calificacion NOT LIKE 2;

El operador LIKE es un poquito costoso en tiempo de ejecucion pero te sacara del apuro.

Si no te funciona es por que no tienes calificaciones diferentes de 2 JA JA JA
acabe de probarlo aqui.

Esto tambien deberia funcionar

SELECT * FROM contenido WHERE calificacion < 2 OR calificacion > 2;
SELECT * FROM contenido WHERE calificacion<> 2;

prueba quitando los apostrofos, puede ser que tu cliente MySQL este tomando el 2 como un campo de texto no se,
no tiene mucha logica lo que estoy diciendo pero me ha servido mucho el ensayo y error en la programacion.

Italico76 06/11/2007 18:03

Re: Como niego (logicamente) esta consulta ?
 
LordCyb3R: lamento comentarte que NO funciono ninguno de los casos que me propusistes.

El tema es asi: tengo seteados solo unos 11 registros con el valor de '2' y el resto..... no fueron seteados (valor ?)

Esta dificil, no ? :neurotico vamos muchachos! propongan!

Edumaca 06/11/2007 18:36

Re: Como niego (logicamente) esta consulta ?
 
Dices que tienes solo 11 Registros con el valor 2, los demas no tienen valor?

Cual es el valor por default de ese campo? Es NULL o es Cero (0)

Si es NULL para probar haz una consulta que te devuelva todos los registros con NULL en ese campo

SELECT * FROM contenido WHERE calificacion IS NULL

Fijate en la base de datos, que valor por default tiene el campo CALIFICACION

Italico76 07/11/2007 00:59

Re: Como niego (logicamente) esta consulta ?
 
Cita:

SELECT * FROM contenido WHERE calificacion IS NULL
EXCELENTE!!!! esa respuesta estaba buscando, Edumaca ;)

El valor por DEFAULT era NULL pero yo probaba = NULL en vez de IS NULL :borracho:

gracias a todos!!! :arriba:

LordCyb3R 07/11/2007 09:43

Re: Como niego (logicamente) esta consulta ?
 
Ja Ja Ja Hubieras comenzado por que comentar que los otros campos estaban nulos,
La operadores de = y like normalmente obvian estos campos.

Que bueno que te ayudaron a encontrar la solución suertex.

Italico76 07/11/2007 10:01

Re: Como niego (logicamente) esta consulta ?
 
Cita:

Ja Ja Ja Hubieras comenzado por que comentar que los otros campos estaban nulos,
La operadores de = y like normalmente obvian estos campos.
Buen dato!!! con razon con LIKE no me funcionaba tampoco! :borracho:


La zona horaria es GMT -6. Ahora son las 20:56.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.