Ürünümüzü onunla uyumlu hale getirmek için depolanan prosedürleri SQL Server'dan Oracle'a dönüştürmekte zorlanıyorum.
Zaman damgasına göre bazı tabloların en son kaydını döndüren sorgularım var:
SQL Server:
SELECT TOP 1 *
FROM RACEWAY_INPUT_LABO
ORDER BY t_stamp DESC
=> Bu bana en son kaydı döndürür
Ancak Oracle:
SELECT *
FROM raceway_input_labo
WHERE rownum <= 1
ORDER BY t_stamp DESC
=> Bu, ORDER BY
ifadeden bağımsız olarak bana en eski kaydı döndürür (muhtemelen dizine bağlı olarak) !
Oracle sorgusunu gereksinimlerime uyacak şekilde özetledim:
SELECT *
FROM
(SELECT *
FROM raceway_input_labo
ORDER BY t_stamp DESC)
WHERE rownum <= 1
ve çalışıyor. Ama bana korkunç bir hack gibi geliyor, özellikle de ilgili tablolarda çok fazla kaydım varsa.
Bunu başarmanın en iyi yolu nedir ?