Brisanje maksimalne vrednosti

Brisanje maksimalne vrednosti

offline
  • Informacione tehnologije
  • Pridružio: 01 Apr 2011
  • Poruke: 321

Potrebna mi je SQL komanda za brisanje red sa najvećom cenom?

Jel može neko da mi pomogne.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14819
  • Gde živiš: Niš

Napisano: 02 Jul 2014 21:29

DELETE FROM <ime_tabele>
WHERE CENA = (SELECT MAX(CENA) FROM <ime_tabele>);

Dopuna: 02 Jul 2014 21:31

Ova naredba briše sve vrste čija je cena jednaka maksimalnoj ceni. Dakle, ukoliko ima više takvih vrsta, briše ih sve.



offline
  • Informacione tehnologije
  • Pridružio: 01 Apr 2011
  • Poruke: 321

Vraća mi ovo:

#1093 - You can't specify target table 'ARTIKLI' for update in FROM clause

Brišem maximalnu vrednost iz ove tabele

Fali ' ' iza Where i radi.

Hvala Very Happy

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Može ovo i mnogo lepše da se napiše Smile Koja baza je u pitanju?

offline
  • Informacione tehnologije
  • Pridružio: 01 Apr 2011
  • Poruke: 321

SQL je u pitanju.

offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14819
  • Gde živiš: Niš

Napisano: 02 Jul 2014 23:51

Sve zavisi od DBMS-a. Kod Oracle DBMS-a ovi radi kako treba, ako me sećanje dobro služi. Very Happy

Dopuna: 02 Jul 2014 23:52

Srki, kako bi drugačije moglo? Very Happy

offline
  • Srđan Tot
  • Am I evil? I am man, yes I am.
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Ne kažem da ne radi dobro, samo da je moglo elegantnije da se napiše Smile Pošto još uvek ne znamo koji SQL server je u pitanju, napisaću kako bi to moglo da se uradi recimo na MS SQL-u:
with q as (   select top 1 * from artikli order by cena desc ) delete from q
Na ovaj način se vrši samo jedan zahtev do tabele i to tek kad se bude izvršila delete komanda.

Ko je trenutno na forumu
 

Ukupno su 633 korisnika na forumu :: 39 registrovanih, 3 sakrivenih i 591 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: -[CoA]-, ajo baba, bankulen, Bojadin Strumski, bokisha253, Boris90, cikadeda, cincarin, crnitrn, darkangel, dragoljub11987, Dukelander, Excalibur13, Fog of War, Frunze, Georgius, havoc995, ivan979, LUDI, M1los, Mercury, Metanoja, MiG-29M2, Milometer, mkukoleca, moldway, naki011, pacika, royst33, sabros, Srky Boy, stegonosa, trajkoni018, tubular, vaso1, voja64, wizzardone, šumar bk2, 125