Heim  >  Fragen und Antworten  >  Hauptteil

java – Probleme mit Paging-Abfragen in der Oracle-Datenbank

Das ist es. Dieses Feld ist in der Tabelle nicht eindeutig. Jetzt möchte ich eine Paging-Abfrage basierend auf dieser Studentennummer durchführen Entfernen Sie doppelte Zahlen und sortieren Sie sie in aufsteigender Reihenfolge:

SELECT DISTINCT(KS_ZKZ) from ZK.T_BYSQ_KS_KC ORDER BY KS_ZKZ ASC

Nachdem ich dieses Abfrageergebnis erhalten habe, möchte ich die Daten von Zeile a bis b dieses Ergebnisses abfragen:

SELECT KS_ZKZ,ROWNUM FROM
(SELECT DISTINCT(KS_ZKZ) from ZK.T_BYSQ_KS_KC ORDER BY KS_ZKZ ASC)
WHERE ROWNUM >=10 AND ROWNUM<=20

Aber es entsteht ein Problem: Unten sind die Abfrageergebnisse. .

Warum kann ich es nicht finden?

PHP中文网PHP中文网2712 Tage vor668

Antworte allen(2)Ich werde antworten

  • PHPz

    PHPz2017-05-17 10:06:43

    rownum只是一个伪列, 你里面那层需要查个rownum出来就行, 比如

    SELECT KS_ZKZ FROM
    (SELECT DISTINCT(KS_ZKZ), ROWNUM rn from ZK.T_BYSQ_KS_KC ORDER BY KS_ZKZ ASC)
    WHERE rn between 10 AND 20 

    Antwort
    0
  • 某草草

    某草草2017-05-17 10:06:43

    rownum的判断必须以1开始,比如=1,<5都是成立的,但是=2,>7都必须先将结果集查出来,通过子语句再查询(rownum需要别名)

    Antwort
    0
  • StornierenAntwort