Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 3 odgovora
  • 4.584 pregleda

Najnovija ↓

Simulacija LIMIT(Mysql) klauzule -- quick and dirty 16.07.2004. u 00:54 · pre 271 mesec #1
Ako nekome ikad zatreba da simulira LIMIT klauzuli iz MySQL-a postoji resenje po ceni brzine izvrsavanja upita. Ceo rezultat SELECT naredbe treba grupisati po pseudokoloni ROWNUM a onda dodati HAVING klauzulu tipa
Code:

HAVING ROWNUM BETWEEN :start AND :end

Posto se GROUP BY (a samim tim i HAVING) procesira posle selektovanja redova moguce je koristiti izraze u kojima se trazi da je vrednost kolone ROWNUM veca od 1 (sto nije slucaj kada se isti takav izraz koristi u WHERE klauzuli)

Potpis
Owl
Re: Simulacija LIMIT(Mysql) klauzule -- quick and dirty 16.07.2004. u 19:20 · pre 271 mesec #2
LIMIT se moze takodje simulirati i po principu Top-N-Analyse:

Pokazacu na primjeru, koji se radi na kursu, koristeci tabelu employees, tako da selektujem 3 osobe koje najvise zaradjuju:
Code:

SELECT ROWNUM AS "Rank", first_name||' '||last_name AS "Ime i prezime", salary AS "Plata"
FROM (SELECT first_name, last_name, salary FROM employees ORDER BY salary DESC)
WHERE ROWNUM <= 3;

Ovaj sub-select (SELECT first_name, last_name, salary FROM employees ORDER BY salary DESC) oznacava "Inline-View", kojim selektujemo zeljene podatke i sortiramo po koloni salary. Iz tog rezultata, odabiremo samo 3 osobe koje najvise zaradjuju, koristeci WHERE klauzulu i ROWNUM internu pseudo-kolumnu koja svakom recordu iz sub-selecta dodjeljuje jednu sekvencijalnu vrijednost pocevsi od 1.
Potpis
Blog - baze podataka
---------------------
Oracle OCP DBA (9i & 10g)
Oracle Database: SQL Certified Expert
Oracle OCP Developer
Certified MySQL DBA
Re: Simulacija LIMIT(Mysql) klauzule -- quick and dirty 16.07.2004. u 21:05 · pre 271 mesec #3
Da, da ovakvo resenje sam procitao negde u dokumentaciji ali sam bio zaboravio na njega. Inace ono sto sam ja predlozio radi samo za upite u kojima se ne koristi GROUP BY.
Potpis
Owl
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme