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

Evitar un registro en consulta

Estas en el tema de Evitar un registro en consulta en el foro de Mysql en Foros del Web. Para que busque una consulta menos el registro keyword que contenga 1111 en la tabla jornales agregue esto, pero no me funciono Código PHP: WHERE keyword ...
  #1 (permalink)  
Antiguo 02/03/2012, 16:11
Avatar de hackcrack  
Fecha de Ingreso: abril-2011
Mensajes: 331
Antigüedad: 13 años
Puntos: 9
Evitar un registro en consulta

Para que busque una consulta menos el registro keyword que contenga 1111 en la tabla jornales agregue esto, pero no me funciono

Código PHP:
WHERE keyword<>'1111' 
__________________
Los mejores juegos de PC gratis en ******
  #2 (permalink)  
Antiguo 02/03/2012, 16:26
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: Evitar un registro en consulta

Hola hackcrack:

El filtro, tal como lo pones está perfecto, si dices que no te está filtrando los registros que quieres es entonces porque el campo contenido no tiene un valor de 1111:

Código MySQL:
Ver original
  1. mysql> SELECT * FROM tabla;
  2. +---------+
  3. | keyword |
  4. +---------+
  5. | 1111    |
  6. | 2222    |
  7. | 3333    |
  8. +---------+
  9. 3 rows in set (0.00 sec)
  10.  
  11. mysql> SELECT * FROM tabla WHERE keyword <> '1111';
  12. +---------+
  13. | keyword |
  14. +---------+
  15. | 2222    |
  16. | 3333    |
  17. +---------+
  18. 2 rows in set (0.00 sec)

Si tu campo es de tipo texto entonces verifica que no contenga espacios en blanco al inicio o fin de la cadena, si fuera el caso haz un TRIM. Si continuas con problemas postea algunos datos de ejemplo, para hacer pruebas.

Saludos
Leo.
  #3 (permalink)  
Antiguo 02/03/2012, 16:43
Avatar de hackcrack  
Fecha de Ingreso: abril-2011
Mensajes: 331
Antigüedad: 13 años
Puntos: 9
Respuesta: Evitar un registro en consulta

Tenes razon, tenia espacios. Gracias :D

Y otra duda, tengo dos tablas ("TABLAA" y "TABLAB") que quiero relacionar con "TABLAC". Se relacionan con el id, el problema es que cuando quiero mostrar los resultados, muestran resultados de una tabla pero no de otra, esta es mi consulta:

Código PHP:
$query "SELECT * FROM `TABLAC` 
INNER JOIN `TABLAA` ON TABLAC.id = TABLAA.id
INNER JOIN `TABLAB` ON TABLAC.id = 'n'+TABLAB.id
INNER JOIN `categorias` ON categorias.idCategoria = juego.idCategoria
WHERE TABLAC.id<>'1111'" 
La cosa es que si llamo un registro de la tablaC que este vinculada con un id de la tablaB, no me agarra los datos del registro de la tablaB
__________________
Los mejores juegos de PC gratis en ******
  #4 (permalink)  
Antiguo 05/03/2012, 09:23
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: Evitar un registro en consulta

Hola de nuevo:

No me quedó claro cuál es el problema que tienes... igual si pones algunos datos de ejemplo de cada una de sus tablas será más fácil poder ayudarte, aunque creo que tengo una idea de donde está el problema:

en tu consulta tienes esto:

Código:
'n'+TABLAB.id
Donde supongo que lo que estás intentando hacer es concatenar una n al campo id de tu tabla B... te recuerdo que el operador (+) en MySQL NO SIRVE PARA CONCATENAR CADENAS. creo que ahí es donde está el problema. Checa este script:

Código MySQL:
Ver original
  1. mysql> select 'hola ' + 'mundo';
  2. +-------------------+
  3. | 'hola ' + 'mundo' |
  4. +-------------------+
  5. |                 0 |
  6. +-------------------+
  7. 1 row in set, 2 warnings (0.08 sec)
  8.  
  9. mysql> select concat('hola ', 'mundo');
  10. +--------------------------+
  11. | concat('hola ', 'mundo') |
  12. +--------------------------+
  13. | hola mundo               |
  14. +--------------------------+
  15. 1 row in set (0.06 sec)

Observa que la primer consulta, aplicando el operador (+) sobre dos cadenas, el resultado es un número. En la segunda consulta, aplicando la función CONCAT, el resultado es la concatenación de las dos cadenas.

Haz la prueba y nos comentas.
Saludos
Leo.
  #5 (permalink)  
Antiguo 06/03/2012, 12:35
Avatar de hackcrack  
Fecha de Ingreso: abril-2011
Mensajes: 331
Antigüedad: 13 años
Puntos: 9
Respuesta: Evitar un registro en consulta

Perfecto, muchas gracias!!
__________________
Los mejores juegos de PC gratis en ******

Etiquetas: registro, tabla
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 15:53.