Hola
A ver si hacemos algo.
En access tengo esto:
SELECT DISTINCTROW Materiales.CodMaterial, Materiales.Descripcion,
FIRST(TransMaterial.Fecha) AS [Primero De Fecha],
FIRST(TransMaterial.Tipo) AS [Primero De Tipo],
FIRST(TransMaterial.Usuario) AS [Primero De Usuario],
SUM(TransMaterial.Cantidad) AS [Suma De Cantidad]
FROM Materiales LEFT JOIN TransMaterial ON Materiales.CodMaterial = TransMaterial.CodMaterial
GROUP BY TransMaterial.Fecha, Materiales.CodMaterial, Materiales.Descripcion
Este query me regresa los registros No repetidos por el uso de DISTINCTROW y el primer registro de los campos que necesito.
Ahora en el mismo access este query hace casi lo mismo:
SELECT DISTINCTROW Materiales.CodMaterial, Materiales.Descripcion,
TransMaterial.Fecha AS PrimeroDeFecha,
TransMaterial.Tipo AS PrimeroDeTipo,
TransMaterial.Usuario AS PrimeroDeUsuario,
SUM(TransMaterial.Cantidad) AS SumaDeCantidad
FROM Materiales INNER JOIN TransMaterial ON Materiales.CodMaterial = TransMaterial.CodMaterial
GROUP BY TransMaterial.Fecha, TransMaterial.Tipo, TransMaterial.Usuario, Materiales.CodMaterial, Materiales.Descripcion
La diferencias es que no llamo al primer registro, pero hace la consulta mas o menos bien.
Pero, si hago la consulta asi:
SELECT DISTINCT Materiales.CodMaterial, Materiales.Descripcion,
TransMaterial.Fecha AS PrimeroDeFecha,
TransMaterial.Tipo AS PrimeroDeTipo,
TransMaterial.Usuario AS PrimeroDeUsuario,
SUM(TransMaterial.Cantidad) AS SumaDeCantidad
FROM Materiales INNER JOIN TransMaterial ON Materiales.CodMaterial = TransMaterial.CodMaterial
GROUP BY TransMaterial.Fecha, TransMaterial.Tipo, TransMaterial.Usuario, Materiales.CodMaterial, Materiales.Descripcion
Simplemente me muestra todos los registros, que no es lo que quiero.
Bien:
En firebird no ha forma de hacerlo, he usado Firts, no funciona, he tratado de usar Rows y no me deja.
No acepta DISTINCTROW, solo DISTINCT por lo que la consulta no funciona.
Si teneis alguna sugerencia es bienvenida.
Saludos