Quando ha fatto oracolo iniziare a sostenere "top":Quando oracle ha iniziato a supportare "top": selezionare top? p2_.PRODUCT_ID da PRODOTTO?
select top ? p2_.PRODUCT_ID from PRODUCT?
Quando ha fatto oracolo iniziare a sostenere "top":Quando oracle ha iniziato a supportare "top": selezionare top? p2_.PRODUCT_ID da PRODOTTO?
select top ? p2_.PRODUCT_ID from PRODUCT?
Non sono sicuro che ORACLE abbia mai avuto una funzione TOP. Vuoi utilizzare una query TOP-N.
Ad esempio:
select *
from (SELECT *
FROM foo
where foo_id=[number]
order by foo_id desc)
where rownum <= 3
Questo ti porterà i primi tre risultati (perché ordino dal disc nella query sub)
La parola chiave 'rownum' è il numero di riga fisica nel database, motivo per cui è necessario prima ordinarlo, quindi applicare i criteri. –
Oracle non supporta la parola chiave TOP. La query
SELECT TOP 10 product_id
FROM product
genererà un errore di sintassi perché la TOP 10 clausola non viene riconosciuto, almeno mediante Oracle 11.1 (la versione corrente produzione).
TOP
è supportato da SQL server, non da Oracle. Non confondere con l'hit FIRST_ROWS che è per recuperare il piano migliore per le prime file da non interrompere dopo un numero di risultati.
Come detto, la soluzione Oracle è giocare con la pseudocolonna ROWNUM.
Perché pensi che Oracle abbia iniziato a supportare "top"? –
Mi colpisce. È stato un po 'di tempo fa. A giudicare dalla sintassi è stato generato da Hibernate. Potrei aver sbagliato il dialetto. – jon077