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

COUNT() en clausula where

Estas en el tema de COUNT() en clausula where en el foro de Bases de Datos General en Foros del Web. Holas, bueno una simple pregunta como el titulo, ¿ Se puede utilizar un count() en una clausula where ?, si se puede me podrian mostrar ...
  #1 (permalink)  
Antiguo 02/07/2008, 09:01
Avatar de cala932  
Fecha de Ingreso: septiembre-2006
Ubicación: San Juan-Argentina
Mensajes: 902
Antigüedad: 17 años, 7 meses
Puntos: 9
COUNT() en clausula where

Holas, bueno una simple pregunta como el titulo, ¿ Se puede utilizar un count() en una clausula where ?, si se puede me podrian mostrar un ejemplo cualquiera. Desde ya agradezco sus comentarios.
Saludos
__________________
->Aprender es un proceso que incluye el error..
  #2 (permalink)  
Antiguo 02/07/2008, 11:56
 
Fecha de Ingreso: junio-2008
Mensajes: 119
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: COUNT() en clausula where

Hola mira yo tengo la mima duda,... pero lo unico que se es que no se puede,,,
  #3 (permalink)  
Antiguo 02/07/2008, 12:44
 
Fecha de Ingreso: junio-2008
Mensajes: 119
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: COUNT() en clausula where

fijate esto

select barco from tabla1 where nombre in (select nombre from tabla2 having count(*) >3 group by nombre)

tabla 1 (barcos)
barco nombre

tabla dos (participa)

nombre batalla

Ahi te selecciona los barcos que participaron en mas de 3 batallas

Espero haberte ayudado...
  #4 (permalink)  
Antiguo 02/07/2008, 19:36
Avatar de cala932  
Fecha de Ingreso: septiembre-2006
Ubicación: San Juan-Argentina
Mensajes: 902
Antigüedad: 17 años, 7 meses
Puntos: 9
Respuesta: COUNT() en clausula where

OK gracias por responder yo creia lo mismo aparentemente no se puede. Nos vemos
Salud2
__________________
->Aprender es un proceso que incluye el error..
  #5 (permalink)  
Antiguo 03/07/2008, 01:57
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 17 años, 2 meses
Puntos: 13
Respuesta: COUNT() en clausula where

Acabo de contestar un hilo igual que este, por favor no dupliqueis hilos.

Salu2
  #6 (permalink)  
Antiguo 03/07/2008, 12:20
Avatar de PequeñoMauro  
Fecha de Ingreso: abril-2006
Ubicación: Lima - Perú
Mensajes: 600
Antigüedad: 18 años
Puntos: 3
Respuesta: COUNT() en clausula where

Si se puede usar un count(*) dentro del where, es como si fuera un campo pero condicionandolo, es decir:

select codigo_curso,descripcion
from tablas
where (select count(*) from tabla where nota<11)>0

Yo a veces lo uso de esa manera en algunas consultas y no necesariamente en el having count, y, claro está, depende de lo que uno desea. No puedo especificar más en mi ejemplo porque depende de las relaciones de las tablas, los campos, etc, etc, pero la idea es esa.
__________________
"Nada en mis manos traigo tan solo a tu cruz me aferro....."
  #7 (permalink)  
Antiguo 04/07/2008, 01:15
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 17 años, 2 meses
Puntos: 13
Respuesta: COUNT() en clausula where

Cita:
Iniciado por PequeñoMauro Ver Mensaje
Si se puede usar un count(*) dentro del where, es como si fuera un campo pero condicionandolo, es decir:

select codigo_curso,descripcion
from tablas
where (select count(*) from tabla where nota<11)>0

Yo a veces lo uso de esa manera en algunas consultas y no necesariamente en el having count, y, claro está, depende de lo que uno desea. No puedo especificar más en mi ejemplo porque depende de las relaciones de las tablas, los campos, etc, etc, pero la idea es esa.
Perdona pequeñoMauro, pero eso no es utilizar un count(*) en el where, es una subconsulta.
Ademas eso es muy muy muy ineficiente, si "tablas" tiene 1000 registros esa select ejecuta 1000 veces la subselect!!!!

Salu2
  #8 (permalink)  
Antiguo 04/07/2008, 08:47
Avatar de PequeñoMauro  
Fecha de Ingreso: abril-2006
Ubicación: Lima - Perú
Mensajes: 600
Antigüedad: 18 años
Puntos: 3
Respuesta: COUNT() en clausula where

Bueno, gracias por lo que me toca, seyko.
En el caso del count(*), de la forma como se usa en el having, en el where, es cierto, no se puede usar, lo entendí de otra manera.
Nos vemos.
__________________
"Nada en mis manos traigo tan solo a tu cruz me aferro....."
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 00:52.