proc almacenado

17/12/2005 - 02:48 por Amaia Ruiz | Informe spam
Hoal de nuevo:

Tengo un problema con un procedimiento almacenado. Quiero sacar los hombres
y mujeres que tengan 18 años, pero que hayan visitado un casino entre dos
fechas. Si hago esto:

SELECT '18-30' AS Edad,Sexo, count(*) AS Cantidad
FROM CLIENTE
WHERE Datediff(Year, c.Fecha_Nac, Getdate()) BETWEEN 18 AND 30 and sexo='F'
GROUP BY sexo

UNION ALL

SELECT '18-30' AS Edad, Sexo, count(*) AS Cantidad
FROM CLIENTE
WHERE Datediff(Year, Fecha_Nac, Getdate()) BETWEEN 18 AND 30 and sexo='V'
GROUP BY sexo

me salel, pero claro no sale por fecha, pero si hago esto:
SELECT '18-30' AS Edad,Sexo, count(*) AS Cantidad

FROM CLIENTE --inner join visitas as vis
WHERE Datediff(Year, c.Fecha_Nac, Getdate()) BETWEEN 18 AND 30 and sexo='F'
GROUP BY sexo

UNION ALL

SELECT '18-30' AS Edad, Sexo, count(*) AS Cantidad

FROM CLIENTE
WHERE Datediff(Year, Fecha_Nac, Getdate()) BETWEEN 18 AND 30 and sexo='V'
GROUP BY sexo

es decir, haciendo el inner join con visitas, me da error en el where.
Alguien sabe porqué puede ser?. Necesito hacer ese procedimiento por fechas.
Muchas gracias por cualquier pequeña aportación

AMAIA
 

Leer las respuestas

#1 Eduardo A. Morcillo [MS MVP VB]
17/12/2005 - 05:17 | Informe spam
Si asi es como tienes la consulta el problema es que te falta indicar por
que campo(s) se relacionan las tablas en el JOIN:

inner join visitas on cliente.el_campo = visitas.el_campo

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
http://mvp.support.microsoft.com/pr...4EF5A4191C

Preguntas similares