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

Como hacer un Count de varios select?

Estas en el tema de Como hacer un Count de varios select? en el foro de Mysql en Foros del Web. hola alguno de uds sabe como contar el resukatdo de una consulta que posee join y union de otros select? ejemplo Código: SELECT COUNT( * ...
  #1 (permalink)  
Antiguo 13/12/2007, 06:10
Avatar de liliancita  
Fecha de Ingreso: diciembre-2007
Mensajes: 189
Antigüedad: 16 años, 4 meses
Puntos: 0
Pregunta Como hacer un Count de varios select?

hola

alguno de uds sabe como contar el resukatdo de una consulta que posee join y union de otros select?


ejemplo

Código:
SELECT COUNT( * ) 
FROM ab
INNER JOIN filtros ON ab.cod_sitio = filtros.valor_filtro
AND (
filtros.idpersona = '1'
)
AND (
filtros.nom_filtro = 'sitio'
)
UNION SELECT COUNT( * ) 
FROM ab
INNER JOIN filtros ON ab.fase = filtros.valor_filtro
AND (
filtros.idpersona = '1'
)
AND (
filtros.nom_filtro = 'sitio'
)
UNION SELECT COUNT( * ) 
FROM ab
INNER JOIN filtros ON ab.zona = filtros.valor_filtro
AND (
filtros.idpersona = '1'
)
AND (
filtros.nom_filtro = 'sitio'
)
  #2 (permalink)  
Antiguo 13/12/2007, 06:42
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 23 años, 6 meses
Puntos: 3
Re: Como hacer un Count de varios select?

funcionara asi?

Cita:
select count(*) from (
SELECT cod_sitio
FROM ab
INNER JOIN filtros ON ab.cod_sitio = filtros.valor_filtro
AND (
filtros.idpersona = '1'
)
AND (
filtros.nom_filtro = 'sitio'
)
UNION SELECT fase
FROM ab
INNER JOIN filtros ON ab.fase = filtros.valor_filtro
AND (
filtros.idpersona = '1'
)
AND (
filtros.nom_filtro = 'sitio'
)
UNION SELECT zona
FROM ab
INNER JOIN filtros ON ab.zona = filtros.valor_filtro
AND (
filtros.idpersona = '1'
)
AND (
filtros.nom_filtro = 'sitio'
)
)
aunque tal vez seria más mejol sacar los count por separado y sumarlos al final... saludos
__________________
|||| ))>_<(( ||||
www.webmagic.cl <-- esta pagina está mala, no la busquen
  #3 (permalink)  
Antiguo 13/12/2007, 07:30
Avatar de liliancita  
Fecha de Ingreso: diciembre-2007
Mensajes: 189
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: Como hacer un Count de varios select?

hola

grax por responderme

probe el codigo que me enviaste, al final hay que agregarle un alias

pero me cuenta el numero de datos por los que toy consultando,no el numero de registro que entrega la consulta


a q te refieres con un count por separado y suamarlos

como es eso?
  #4 (permalink)  
Antiguo 13/12/2007, 07:42
Avatar de liliancita  
Fecha de Ingreso: diciembre-2007
Mensajes: 189
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: Como hacer un Count de varios select?

holisss yo de nuevo
era para contarte que ya funciona :)

estaba bien lo que pasa es que en los select era AB.*, la busqueda era completa no por campos


mil graxx

saludos
q estes super

  #5 (permalink)  
Antiguo 13/12/2007, 07:43
Avatar de Sir Matrix  
Fecha de Ingreso: octubre-2000
Ubicación: Dentro de mi cabeza. ono?
Mensajes: 1.264
Antigüedad: 23 años, 6 meses
Puntos: 3
Re: Como hacer un Count de varios select?

ahh,prueba mejor entonces con:
(al hacer el union tal vez junta los registros iguales)

select sum(cuenta) as alias from (
SELECT '1' as marca, count(*) as cuenta
FROM ab
INNER JOIN filtros ON ab.cod_sitio = filtros.valor_filtro
AND (
filtros.idpersona = '1'
)
AND (
filtros.nom_filtro = 'sitio'
)
UNION SELECT '2' as marca, count(*) as cuenta
FROM ab
INNER JOIN filtros ON ab.fase = filtros.valor_filtro
AND (
filtros.idpersona = '1'
)
AND (
filtros.nom_filtro = 'sitio'
)
UNION SELECT '3' as marca, count(*) as cuenta
FROM ab
INNER JOIN filtros ON ab.zona = filtros.valor_filtro
AND (
filtros.idpersona = '1'
)
AND (
filtros.nom_filtro = 'sitio'
)
)

Lo otro que te decia es hacer algo como
select $variable1= (select count(*) from etc, etc)
select $variable1 += (select count(*) from etc, etc)
select $variable1 += (select count(*) from etc, etc)

select $variable1

pero no se coo anda lo de las variables en my sql, de cualquier forma lo primero debería funcionar..

Slaudosss
__________________
|||| ))>_<(( ||||
www.webmagic.cl <-- esta pagina está mala, no la busquen
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 08:07.