none
Limitar la cantidad de registros traidos por MS Query (uso de "LAST" o "TOP") RRS feed

  • Pregunta

  • Hola. Tengo información en varias tablas de Excel y estoy usando MS Query para presentar la información.

    El problema es que me trae todos los registros, y yo sólo quiero que me traiga los 30 últimos.

    La consulta la estoy ordenando por fecha.

    Para otra consulta usé "LAST" y sí me trajo el último. es esta:

    SELECT LAST(`CLIENTES$`.NEGOCIO)
    FROM `CLIENTES$` `CLIENTES$`, `CREDITOS$` `CREDITOS$`
    WHERE (`CLIENTES$`.NUC=CREDITOS$.NUC) AND (`CREDITOS$`.FACT=?)

    Pero he probado con "LAST 30" y me marca error. (la siguiente)

    SELECT LAST 30(`CREDITOS$`.FECHA, `CREDITOS$`.RUTA, `CREDITOS$`.NUC, `CREDITOS$`.FACT, `CREDITOS$`.CREDITO, `CREDITOS$`.COBRANZA)
    FROM `CREDITOS$` `CREDITOS$`
    WHERE (`CREDITOS$`.NUC=?)
    ORDER BY `CREDITOS$`.FACT, `CREDITOS$`.FECHA

    Parece que si sólo traigo un campo, no hay problema. Pero si traigo varios sí.

    No sé si lo estoy haciendo bien o hay otra forma de hacerlo.

    Gracias

    jueves, 21 de abril de 2016 1:39

Todas las respuestas

  • Hola!

    te sobran los paréntesis, por otra me temo que esos nombres de campo (con $) no le gusten mucho a Access y que sobran las comillas simples

    SELECT LAST 30 [CREDITOS$]. ...



    Saludos a todos desde Huelva Emilio http://www.mvp-access.es/emilio/

    jueves, 21 de abril de 2016 4:24