Ver Mensaje Individual
  #10 (permalink)  
Antiguo 13/12/2005, 12:26
Avatar de Andres95
Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
Cita:
Iniciado por meru-kun
Y me da este error:
Código:
[Microsoft][Controlador ODBC Microsoft Access] Error de sintaxis (falta operador) en la expresión de consulta 'count(distinct id)'.
La única diferencia respecto a tú codigo es que tengo que usar los "alias" s, i porque tengo el campo ID igual en las dos tablas.
¿Quizá un error del driver de Access? (precisamente hago esto para luego migrar todo a MySQL >_<).
Bueno pues si, es precisamente porque usas access.. al parecer no acepta el distinct dentro de una funcion (como es el caso de count) y el ejemplo anterior lo realicé con SQL Server 2000.

En access la unica forma que se me ocurrio de momento es hacer una subconsulta. aunque podria haber otras formas mas optimas esta si me da el mismo resultado que el ejemplo anterior.

Código:
SELECT 
	Count(m.expr1) AS CuentaGames_Secc
	,sum(m.Expr2) AS CuentaGames_Info
FROM 
	[
	SELECT 
		games_secc.id as expr1, count(games_info.id) AS Expr2
	FROM 
		games_secc INNER JOIN games_info ON games_secc.id = games_info.id
	WHERE 
		(games_secc.id_autor=3)
	GROUP BY games_secc.id
	]. AS m;

Seria reemplazar el 3 por el id del usuario que requieres.

Y bueno en mysql ya no te podria decir ya que no lo he utilizado.


Un saludo!