Oracle gir en innebygd funksjon for å oppnå det høyeste antallet , eller den siste verdien i en karakter serien. "MAX "-funksjonen kan bli inkludert i noen utvalgte , oppdatere eller slette uttalelse sammenligne verdier mot de høyeste i serien. Det kan sende den høyeste verdien for hver gruppe med poster , for eksempel alle de i en bestemt kategori som "mannlig " eller " kvinne ". For å bruke maks setning, må grupperinger av data skje med mindre det eneste elementet som kreves er den høyeste verdien av et bestemt felt i en tabell. Instruksjoner
en
Lag en test tabell i Oracle på kommandolinjen for å teste funksjonen MAX med data som følger : en
CREATE TABLE test ( testid NUMMER , testgroup VARCHAR2 ( 2 ) ) ;
INSERT INTO test ( testid , testgroup ) VALUES ( 1 , 'A' ) ;
INSERT INTO test ( testid , testgroup ) VALUES ( 2 , 'A' ) ;
INSERT INTO test ( testid , testgroup ) VALUES ( 3 , 'A' ) ;
INSERT INTO test ( testid , testgroup ) VALUES ( 4 , 'B ');
INSERT TIL test ( testid , testgroup ) VALUES ( 5 , ' B' ) ;
INSERT INTO test ( testid , testgroup ) VALUES ( 6 , ' B ');
INSERT INTO test ( testid , testgroup ) VALUES ( 7 , 'C ') ;
INSERT INTO test ( testid , testgroup ) VALUES ( 8 , 'C ');
INSERT INTO test ( testid , testgroup ) VERDIER ( 9 , 'C ');
INSERT INTO test ( testid , testgroup ) VALUES ( 10 , ' D' );
INSERT INTO test ( testid , testgroup ) VALUES ( 11 , ' D ');
INSERT INTO test ( testid , testgroup ) VALUES ( 12 , ' D ' );
Dette skaper data med de samme verdiene i grupper, som finnes i " testgroup "-feltet . Det andre feltet inneholder unike verdier på hver rad.
2
Skriv en SELECT-setning for å oppnå den høyeste verdien av " testid "-feltet på kommandolinjen . For å demonstrere maks funksjon for alle dataene vi bare skrive på kommandolinjen
"SQL >" SELECT MAX ( testid ) testidmax FRA test;
Dette vil velge høyest ( maksimum) verdi av testid i tabellen test , returnerer nummeret og utgang : en
TESTIDMAX
12
3
Gruppe maksimumsverdiene i et sett med poster ved gruppering utgang for hver kategori som i følgende : en
SELECT testgroup , MAX ( testid )
fRA test
ORDER BY testgroup
GROUP bY testgroup
p Dette vil generere den høyeste verdien for hver gruppering av " testgroup "-feltet i motsetning til den høyeste verdien for hele serien : en
tESTGROUP MAX ( TESTID )
3
B 6
C 9
D 12