diff --git a/adminer/drivers/oracle.inc.php b/adminer/drivers/oracle.inc.php index 1844e084..878d5e3c 100644 --- a/adminer/drivers/oracle.inc.php +++ b/adminer/drivers/oracle.inc.php @@ -153,7 +153,10 @@ if (isset($_GET["oracle"])) { } function limit($query, $where, $limit, $offset = 0, $separator = " ") { - return " $query$where" . (isset($limit) ? ($where ? " AND" : $separator . "WHERE") . ($offset ? " rownum > $offset AND" : "") . " rownum <= " . ($limit + $offset) : ""); + return ($offset ? " * FROM (SELECT t.*, rownum AS rnum FROM (SELECT $query$where) t WHERE rownum <= " . ($limit + $offset) . ") WHERE rnum > $offset" + : (isset($limit) ? " * FROM (SELECT $query$where) WHERE rownum <= " . ($limit + $offset) + : " $query$where" + )); } function limit1($query, $where) { diff --git a/adminer/select.inc.php b/adminer/select.inc.php index d30c2bad..30d1561b 100644 --- a/adminer/select.inc.php +++ b/adminer/select.inc.php @@ -230,6 +230,9 @@ if (!$columns) { echo "