Los Foros de ASPTutor.com
Home | Perfil | Registrarse | Temas Activos | Miembros | Buscar | FAQ
Usuario:
Password:
 Todos los Foros
 ASP
 Problema con consulta MAX- INNER JOIN
 Foro Bloqueado  Tema Bloqueado


Autor Temas
josem241
Starting Member


14 Posts
Mensajes - 08 Jun 2005 :  22:46:52  Ver Perfil  Enviar Email
HOla:


Tengo un problema al tratar de hallar el valor maximo de una tabla lo hago con:
Max(Funcionalidad.Fecha_Avance)

el problema esta cuando quiero, obtener los otros campos de este registro, p ej. si coloco, tratando de mostrar el campo TERMINO_FUNCION:

Temp="Select Funcion.Termino_Funcion,Max(Funcionalidad.Fecha_Avance) as Mayor From Funcionalidad INNER JOIN Funcion ON Funcionalidad.IdFuncion=Funcion.Id Where Funcion.Id=" & IdFuncion & ""


ME MUESTRA EL ERROR:

Microsoft JET Database Engine error '80040e21'

You tried to execute a query that does not include the specified expression 'Termino_Funcion' as part of an aggregate function.

como mostrar los otros campos, que se puede hacer?

José

Alexis_m20
Senior Member

Chile
1021 Posts
Posted - 09 Jun 2005 :  15:51:41  Ver perfil  Enviar e-mail  Visit Alexis_m20's Homepage
Hola

puedes trtar de poner un Group by

Temp="Select Funcion.Termino_Funcion,Max(Funcionalidad.Fecha_Avance) as Mayor From Funcionalidad INNER JOIN Funcion ON Funcionalidad.IdFuncion=Funcion.Id Where Funcion.Id=" & IdFuncion & " Group by Funcion.Termino_Funcion "

lo que sucede que todas las clausulas de agrupamiento , como Sum, AVG, Min, Max, Count, si quieres poner un campo al lado debes de poner un group by con los campos separados por (,) excepto el que estas sumando, o contando etc

Si puedo ayudar lo hare
Entren a mi web y registrense
http://www33.brinkster.com/alexis20Inicio Pagina

josem241
Starting Member


14 Posts
Posted - 09 Jun 2005 :  19:05:27  Ver perfil  Enviar e-mail
Hola:

Hice dos pruebas:
en la primera de esta manera, aqui si me muestra la maxima fecha

Temp4="Select Max(Funcionalidad.Fecha_Avance) as Mayor From Funcionalidad INNER JOIN Funcion ON Funcionalidad.IdFuncion=Funcion.Id Where Funcion.Id=" & IdFuncion & ""

Ahora si quiero mostrar el campo Peso relacionado a este registro escribo:

Temp4="Select Funcionalidad.Peso,Max(Funcionalidad.Fecha_Avance) as Mayor From Funcionalidad INNER JOIN Funcion ON Funcionalidad.IdFuncion=Funcion.Id Where Funcionalidad.IdFuncion=" & IdFuncion & " GROUP BY Funcionalidad.Peso"

los datos mostrados no corresponden al de la fecha maxima (la fecha tampoco es la mayor)

varie el orden en las clausula SELECT pero nada. alguna sugerencia...

saludos

Jose

Inicio Pagina

josem241
Starting Member


14 Posts
Posted - 09 Jun 2005 :  19:21:15  Ver perfil  Enviar e-mail
Simplifique esto mas pero nada:

aqui si muestra la maxima fecha:

Temp4="Select Max(Funcionalidad.Fecha_Avance) as Mayor From Funcionalidad Where Funcionalidad.IdFuncion=" & IdFuncion & ""


y si quiero mostrar el campo Peso asociado a este registro coloco:

Temp4="Select Max(Funcionalidad.Fecha_Avance) as Mayor , Funcionalidad.Peso From Funcionalidad Where Funcionalidad.IdFuncion=" & IdFuncion & " Group by Funcionalidad.Peso"

y muestra otra fecha con su campo peso , pero que no es la maxima fecha.

¿como recuperar el otro campo?..

saludos

José

Inicio Pagina

   
 Foro Bloqueado  Tema Bloqueado
Ir a:
Los Foros de ASPTutor.com Los Foros de ASPTutor.com
Ir al principio de la Página

 Imprimir Tema
 

Descargas de manuales¦ Ejemplos de código ¦ Artículos mas visitados ¦ Envía tu articulo ¦ Foros ¦
  Libro de visitas ¦Crea un enlace con ASPTutor 
 

    © 2001-Hasta hoy  Pedro Rufo Martín  contactar