Ir al contenido


Foto

QUERY


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

#1 root

root

    mister

  • Miembro Platino
  • PipPipPip
  • 529 mensajes
  • LocationMexico D.F:

Escrito 07 julio 2009 - 05:05

Saludos a todooooos

nuevamente dando lata
masterssss ( a todos y todas )

tengo una duda
hago una consulta asi



sql
  1. SELECT DISTINCT
  2. cuenta.folio,
  3. cuenta.no_credito,
  4. saldo.saldo,
  5. saldo.fecha
  6. FROM
  7. cuenta
  8. INNER JOIN saldo ON saldo.id_cuenta = cuenta.id_cuenta
  9. WHERE
  10. cuenta.comercio =  'FONACOT 2'
  11. GROUP BY
  12. saldo.id_cuenta
  13. ORDER BY
  14. cuenta.folio ASC,
  15. saldo.fecha ASC



pero me toma los primeros valores
como puedo hacer para que me tome los ultimos ??

por que si la corro asi no me toma en cuenta los pagos que posiblemente a esten hechos

si me explico ???
  • 0

#2 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.486 mensajes
  • LocationMexico City

Escrito 07 julio 2009 - 05:08

A qué te refieres con que toma los primeros valores ???  *-)

Ya intentaste utilizando solo SELECT sin el DISTINCT ???

Saludos  :D
  • 0

#3 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4.266 mensajes
  • LocationCosta Rica

Escrito 07 julio 2009 - 07:14

Hola
El DISTINCT seleccionara los iguales y solo mostrara uno de ellos.
Para clasificar cual de ellos se necesita poner en tu caso que quieres el ultimo LAST.
Esto lo tendrás que hacer en el campo o campos que lo requieran.


sql
  1. SELECT DISTINCT
  2. cuenta.folio,
  3. LAST(cuenta.no_credito) AS credito, // este dato sera el ultimo
  4. etc......


Saludos
  • 0

#4 root

root

    mister

  • Miembro Platino
  • PipPipPip
  • 529 mensajes
  • LocationMexico D.F:

Escrito 08 julio 2009 - 12:25

mmmm master caral
no me parece nada referente a la funcion
last en el libro de referencias

por que me dice que no se puede que consulte el manual etc etc
  • 0

#5 root

root

    mister

  • Miembro Platino
  • PipPipPip
  • 529 mensajes
  • LocationMexico D.F:

Escrito 08 julio 2009 - 12:34

ya lo encontre

se husa la funcion MAX

kedaria asi

SELECT
cuenta.folio,
Max(cuenta.no_credito),
cuenta.nombre,
saldo.saldo AS ultimo_saldo,
saldo.fecha_insertado
FROM
cuenta
Inner Join saldo ON saldo.id_cuenta = cuenta.id_cuenta
WHERE
cuenta.comercio =  'FONACOT 2'
GROUP BY
cuenta.folio,
cuenta.nombre,
saldo.fecha_insertado
ORDER BY
saldo.clave ASC


y asi ditingue y toma el ultimo o el maximo registro del campo que selecciones


  • 0




IP.Board spam blocked by CleanTalk.