Ir al contenido


Foto

como hacer consulta al ultimo Registro


  • Por favor identifícate para responder
5 respuestas en este tema

#1 amell2020

amell2020

    Advanced Member

  • Miembros
  • PipPipPip
  • 340 mensajes
  • LocationEn un solo Lugar

Escrito 08 diciembre 2011 - 10:02

hola amigo tengo esta consulta
SELECT 
    P.[Id RIS PACIENTE],
    P.NOMBRE,
    P.NSS,
    M.[CODIGO MÉDICO],
    M.NOMBRE as MEDICO,
    M.ESPECIALIDAD,
    DA.IDCIE10,
    DA.DESCRIPCIÓN,
    H.ID,
    H.Fecha_Factura,
    H.[FECHA DE HOSPITALIZACIÓN],
    H.[FECHA DE ALTA],
    H.[DIAS DE HOSPITALIZACIÓN],
    MED.[Id MEDICAMENTO],
    MED.MEDICAMENTO,
    MED.CANTIDAD,
    MED.[PRECIO UNITARIO],
    MED.[PRECIO TOTAL],
    MED.Categoria,
    PRO.ID_PROCEDIMIENTO,
    PRO.PROCEDIMIENTO,
    PRO.PRECIO,
    L.Id,
    L.EXAMEN,
    L.[PRECIO UNITARIO],
    T.[TIPO DE SALA],
    T.[COSTO POR DIA],
    I.Id,
    I.[ESTUDIO DE IMAGEN],
    I.CANTIDAD,
    I.PRECIO_UNITARIO,
    I.[COSTO TOTAL],
    H.[COSTO TOTAL DE HOSPITALIZACIÓN]
FROM HOSPITALIZACIÓN H
left outer join [RIS PACIENTES] P  ON P.[Id RIS PACIENTE]  =  H.RISPACIENTES
left outer join MEDICOS M ON M.[Id MEDICOS] = H.[MEDICO DE HOSPITALIZACIÓN]
left outer join MEDICAMENTOS MED ON MED.id_hospitalización = H.ID
left outer join PROCEDIMIENTOS PRO ON PRO.id_hospitalización = H.ID
left outer join LABORATORIOS L ON L.ID_HOSPITALIZACION = H.ID
left outer join IMAGENES I ON I.ID_HOSPITALIZACION = H.ID
left outer join [TIPO DE SALA] T ON T.Id = H.[TIPO DE SALA]
left outer join [DIAGNOSTICO A] DA ON DA.ID_HOSPITALIZACION = H.ID
group by  P.[Id RIS PACIENTE], P.NOMBRE, P.NSS, M.[CODIGO MÉDICO], M.NOMBRE, M.ESPECIALIDAD,DA.IDCIE10, DA.DESCRIPCIÓN,H.Id, H.Fecha_Factura, H.[FECHA DE HOSPITALIZACIÓN], H.[FECHA DE ALTA], H.[DIAS DE HOSPITALIZACIÓN], MED.[Id MEDICAMENTO], MED.MEDICAMENTO, MED.CANTIDAD, MED.[PRECIO UNITARIO], MED.[PRECIO TOTAL],MED.Categoria,
PRO.ID_PROCEDIMIENTO, PRO.PROCEDIMIENTO,PRO.PRECIO, L.Id, L.EXAMEN, L.[PRECIO UNITARIO], L.TOTAL, T.[TIPO DE SALA], T.[COSTO POR DIA], I.Id, I.[ESTUDIO DE IMAGEN], I.CANTIDAD, I.PRECIO_UNITARIO, I.[COSTO TOTAL], H.[COSTO TOTAL DE HOSPITALIZACIÓN]


me gustaria saber como hacerla para que me muestre el ultimo registro que yo registre, no que traiga todos los registro, si no un solo que es el ultimo que registre?

por favor ayuda con esto, cualquier cosa favor en contestar. gracias

  • 0

#2 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 08 diciembre 2011 - 10:10

2 Formas:

1 ) Por Consulta, puedes hacer una subconsulta sencilla en el where, algo como esto:

WHERE H.ID = (SELECT MAX(ID) FROM HOSPITALIZACION LIMIT 1)


2) Por DataSet, en el mismo DataSet existe una propiedad llama Last, que se encarga de llevar al dataset al ultimo registro, algo como:



delphi
  1. ADOQuery1.Last;



Saludos.
  • 0

#3 amell2020

amell2020

    Advanced Member

  • Miembros
  • PipPipPip
  • 340 mensajes
  • LocationEn un solo Lugar

Escrito 12 enero 2012 - 09:29

no me da error con la primera opción que pones amigo, Mens. 102, Nivel 15, Estado 1, Línea 45
Sintaxis incorrecta cerca de '1'.
  • 0

#4 luk2009

luk2009

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.040 mensajes
  • LocationSanto Domingo

Escrito 13 enero 2012 - 12:05

hace mucho que no uso ms sql server, pero creo que es:
select top 1  campo1,campo 2  where lo que sea  order by campo1 desc


Lo que debes hacer es ordenar por tu campo indice de forma descendente y con ello obtendras el ultimo registro.

  • 0

#5 amell2020

amell2020

    Advanced Member

  • Miembros
  • PipPipPip
  • 340 mensajes
  • LocationEn un solo Lugar

Escrito 13 enero 2012 - 11:00

Bueno amigos gracias ya resolvi  con el ejemplo de enecumene, pude sacar uno. jjejeje porque pareciera que me lo dejo de tarea. jajaj
  • 0

#6 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 16 enero 2012 - 11:34

Bueno amigos gracias ya resolvi  con el ejemplo de enecumene, pude sacar uno. jjejeje porque pareciera que me lo dejo de tarea. jajaj


*-)  ;)  (y)
  • 0




IP.Board spam blocked by CleanTalk.