gibt es bei Oracle eine Funktion, mit der man die laufende Zeilennummer eines Resultsets feststellen kann?
habe mal eben in altem kram rumgesucht. vielleicht hilft dir das weiter:
<schnipp>
function gibListe($von='', $bis='') {
echo("<!-- ".__FILE__."->gibListe(".$von.", ".$bis.")[".__LINE__."] -->\r\n");
global $DB_Sitzung;
global $Format;
//
$sql = "SELECT UNIQUE v.SV_ORGAID, v.SV_VZID, v.ENDE_DATE, p.STATUS, "
."a.NAME, a.STRASSE, a.PLZ, a.ORT, "
."SUBSTR(a.VZID,5,3)||SUBSTR(a.ADRID,3,4) AS BetriebsNummer "
."FROM STAMM_HAENDLER_VERTRAG v, STAMM_HAENDLER p, LF_OID_ADRESSE a ";
$sql .= "WHERE v.SV_ORGAID = p.SH_ORGAID AND a.ORGAID = v.SV_ORGAID ";
if ($this->VzWHERE) { $sql .= 'AND '.$this->VzWHERE." "; }
if ($this->VertragWHERE) { $sql .= 'AND '.$this->VertragWHERE." "; }
if ($von or $bis) {
$sql = "SELECT SV_ORGAID, SV_VZID, ENDE_DATE, STATUS, NAME, STRASSE, PLZ, ORT, BetriebsNummer, ROWNUM AS Zeile "
."FROM (".$sql.")";
$sql = "SELECT SV_ORGAID, SV_VZID, ENDE_DATE, STATUS, NAME, STRASSE, PLZ, ORT, BetriebsNummer "
."FROM (".$sql.") T1 "
."WHERE T1.Zeile BETWEEN ".$von." AND ".$bis; // PartnerListe einschränken !
}
echo "<!-- SQL: "; print_r($sql); echo(" -->\r\n");
</schnipp>
interessant ist die stelle mit ROWNUM.