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

si no existe línea al consultar...

Estas en el tema de si no existe línea al consultar... en el foro de Mysql en Foros del Web. Hola a todos. Supongamos la siguiente consulta: Código: SELECT nombre FROM usuarios WHERE id=10 La línea con id=10 no existe (o ha sido eliminada o ...
  #1 (permalink)  
Antiguo 25/04/2007, 09:51
Avatar de Mahalo  
Fecha de Ingreso: julio-2004
Ubicación: Mallorca (Illes Balears)
Mensajes: 1.121
Antigüedad: 19 años, 9 meses
Puntos: 12
si no existe línea al consultar...

Hola a todos.
Supongamos la siguiente consulta:
Código:
SELECT nombre
FROM usuarios
WHERE id=10
La línea con id=10 no existe (o ha sido eliminada o no está creada todavía, da igual). ¿Cómo puedo recuperar un resultado?
Había probado esto pero nada:
Código:
SELECT IF(nombre, nombre, 'no existe')
FROM usuarios
WHERE id=10
Me gustaría poder resolverlo en la misma consulta, sin tener que hacer más operaciones.
Saludos y gracias!!
  #2 (permalink)  
Antiguo 25/04/2007, 10:07
Avatar de cala932  
Fecha de Ingreso: septiembre-2006
Ubicación: San Juan-Argentina
Mensajes: 902
Antigüedad: 17 años, 7 meses
Puntos: 9
Re: si no existe línea al consultar...

mmmm.. en la misma consulta nose pero podrias utilizar
Código PHP:
mysql_affected_rows(); 
Luego de ejecutar la consulta, sino existe te devuelve 0. Saludos
__________________
->Aprender es un proceso que incluye el error..
  #3 (permalink)  
Antiguo 25/04/2007, 11:55
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 8 meses
Puntos: 70
Re: si no existe línea al consultar...

Pues cuenta con mysql_num_rows, te trae la cantidad de registros que tuvo la consulta, si te da 0 es por que no està.

Saludos!
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #4 (permalink)  
Antiguo 26/04/2007, 00:18
Avatar de Mahalo  
Fecha de Ingreso: julio-2004
Ubicación: Mallorca (Illes Balears)
Mensajes: 1.121
Antigüedad: 19 años, 9 meses
Puntos: 12
Re: si no existe línea al consultar...

Hola.
Sí, ya conocía estas posibilidades, pero quería resolverlo en la misma consulta para evitar unas líneas más de código. Más que nada porque el caso en el que trabajo no es tan simple como el ejemplo que he puesto. Se trata de un INSERT...SELECT. De ahí que si no encuentra registros, inserte otros datos.
En fin, gracias por responder.

Saludos!!!
  #5 (permalink)  
Antiguo 26/04/2007, 01:03
Avatar de Mahalo  
Fecha de Ingreso: julio-2004
Ubicación: Mallorca (Illes Balears)
Mensajes: 1.121
Antigüedad: 19 años, 9 meses
Puntos: 12
Re: si no existe línea al consultar...

Hola.
Ya resolví el problema. Ahí va, por si a alguien le sirve:
Código:
SELECT if(COUNT(nombre)>0, nombre, '---') AS nombre
FROM usuarios
WHERE id=10
Bastaba hacer un COUNT. Simple, ¿eh?
Saludos!!!
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.