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

Consultas sencillas

Estas en el tema de Consultas sencillas en el foro de Mysql en Foros del Web. Hola me gustaría saber como hacer 2 consultas: 1.- Si hay valores duplicados en una tabla (por ejemplo si hay 2 registros con el mismo ...
  #1 (permalink)  
Antiguo 09/06/2007, 05:38
Avatar de Masterkhan  
Fecha de Ingreso: septiembre-2006
Ubicación: En mi casa
Mensajes: 64
Antigüedad: 17 años, 7 meses
Puntos: 0
Consultas sencillas

Hola me gustaría saber como hacer 2 consultas:

1.- Si hay valores duplicados en una tabla (por ejemplo si hay 2 registros con el mismo email)
2.-Hacer consultas que arrojen resultados parciales por ejemplo del 1-500 o del 500-1000 (no del tipo SELECT * FROM....)

Gracias por su ayuda
  #2 (permalink)  
Antiguo 09/06/2007, 21:54
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 8 meses
Puntos: 70
De acuerdo Re: Consultas sencillas

Hola Masterkhan.

Para tu primera pregunta, haces lo siguiente:

Cita:
select * from tabla_que _ncesites where campo_email=al_email_que_buscas
Asì te arrojarà un resultado, dependiendo de esto, preguntas es tu script, si el resultado de tu consulta es mayor que 1, haga tal cosa, sino haga tal otra.
Còmo tomas el numero de los registros??? con la instrucciòn mysql_num_rows.

Para tu segunda pregunta, lo haces con la isntrucciòn limit de mysql.

Saludos espero te sirva
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #3 (permalink)  
Antiguo 10/06/2007, 06:55
Avatar de Yaraher  
Fecha de Ingreso: abril-2007
Ubicación: Lima, Perú
Mensajes: 262
Antigüedad: 17 años
Puntos: 9
Re: Consultas sencillas

Se me ocurre que para la primera puedas establecer un stored procedure para que revise toda la tabla, y si el count() de cada email es mayor a uno, devolver un valor true o false como respuesta.

Así dejas esa lógica al SGDB y no a tu aplicación, reduciendo la comunciación entre la capa de datos y la del manejador a sólo dos llamadas, la de consulta y la de respuesta para todos los emails existentes.

Sí sólo deseas consultar un correo a la vez, entonces la solución de Carlx es la mejor (aunque "mysql_num_rows" no estoy seguro si funciona en otro lenguaje que no sea PHP, normalmente leo la data en un DataSet y ahí hago la verificación del número de filas, pero es una variación de la misma idea).
  #4 (permalink)  
Antiguo 10/06/2007, 09:41
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 18 años, 5 meses
Puntos: 5
Re: Consultas sencillas

Para tu primera pregunta puedes usar la siguiente consulta:
Código PHP:
SELECT email
FROM tabla
GROUP BY email
HAVING COUNT
(email)>
Sobre la segunda consulta debes hacer uso de la sentencia LIMIT
Código PHP:
mysqlSELECT FROM table LIMIT 5,10
puedes revisar la documentacion de MySQL ahi encontraras mas informacion sobre el uso de esta clausula:
http://dev.mysql.com/doc/refman/5.0/es/select.html
saludos, cya
__________________
"El Conocimiento es de todos, no solo de algunos"
  #5 (permalink)  
Antiguo 11/06/2007, 02:40
Avatar de Masterkhan  
Fecha de Ingreso: septiembre-2006
Ubicación: En mi casa
Mensajes: 64
Antigüedad: 17 años, 7 meses
Puntos: 0
Re: Consultas sencillas

Gracias a todos!!

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 09:31.