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: 14809
  • 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: 14809
  • 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 1032 korisnika na forumu :: 37 registrovanih, 4 sakrivenih i 991 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: babaroga, cenejac111, djboj, DPera, draganca, dushan, esx66, Georgius, HrcAk47, ikan, janbo, kobaja77, Koridor, ladro, laki_bb, laurusri, Litostroton, mercedesamg, Millennium, Milometer, milutin134, Panter, Pikac-47, prashinar, rasok, Rogan33, Srle993, stegonosa, Sumadija34, Tas011, Trpe Grozni, Vlada1389, vladulns, Vzor50, zlaya011, žeks62, 79693