sql >> Databáze >  >> RDS >> Oracle

Získejte poslední záznam sady výsledků

Existuje mnoho způsobů:

Oracle Pre-12c verze:

  • ROWNUM v dílčím dotazu a OBJEDNAT PODLE ve vnějším dotazu
  • Analytické funkce

Oracle 12c verze:

  • Funkce omezení nejvyšších řádků

Pomocí ROWNUM

SELECT HAZMAT_PLACARD_NOTATION
INTO v_pcn
FROM
  (SELECT HAZMAT_PLACARD_NOTATION,
    ROWNUM rn
  FROM HAZMAT_CLASS_IRF
  WHERE HAZMAT_CD = p_stcc_cd
  ORDER BY        <sort_column> DESC
  )
WHERE rn =1;

Pomocí funkce omezení nejvyšších řádků

SELECT HAZMAT_PLACARD_NOTATION
 INTO v_pcn
  FROM HAZMAT_CLASS_IRF
  WHERE HAZMAT_CD = p_stcc_cd
  ORDER BY        <sort_column> DESC
FETCH FIRST 1 ROW ONLY;

Podívejte se na tuto odpověď pro příklady a podrobné vysvětlení.



  1. Dostávám mnoho vybraných @@session.tx_read_only, udělal by jeden totéž?

  2. Poddotaz, který by měl být nezávislý, není. Proč?

  3. MySQL:Direktiva, aby všechny sloupce procházely podřetězcem?

  4. Jak vrátit přírůstkové číslo skupiny na skupinu v SQL