SQL upit

SQL upit

offline
  • Pridružio: 24 Nov 2009
  • Poruke: 128
  • Gde živiš: Zemun

Napisano: 15 Jan 2013 10:34

Ljudi treba mi pomoc.

pokusavam da izvucem podatke ali uslov je da mi izvuce podatke samo za poslednju promenu pokusao sam vise varijanti npr.

select vel_cen from proiz_cen where cen='11' and sif_rob='10051' and datum_promene = (select max(datum_promene) from proiz_cen)

pokusao i

select vel_cen from proiz_cen where cen='11' and sif_rob='10051' and datum_promene in (select max(datum_promene) from proiz_cen)

oba prethodna upita mi ne izbacuju nista

neka ideja?!

ovo je bez uslova za datum!
10051 732.560000 6/17/2010 2:30 PM
10051 654.480000 2/11/2011 9:55 AM
10051 654.480000 2/17/2011 10:08 AM
crvenom bojom je oznaceno ono sto zelim da dobijem!!!

Dopuna: 15 Jan 2013 10:35

a da bude lakse prvo je id pa vel_cen pa datum_promene Very Happy



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • soxxx 
  • Prijatelj foruma
  • Pridružio: 25 Maj 2005
  • Poruke: 1482
  • Gde živiš: Gracanica, Kosovo

Koji SQL je u pitanju?

Probaj da izbacis to za datum_promene i stavi:
SELECT TOP 1 ...... ORDER BY datum_promene DESC
To je ako zelis samo taj zadnji unos.



offline
  • Pridružio: 24 Jun 2003
  • Poruke: 45
  • Gde živiš: Banja Luka

vladimir_tubic ::Napisano: 15 Jan 2013 10:34

Ljudi treba mi pomoc.

pokusavam da izvucem podatke ali uslov je da mi izvuce podatke samo za poslednju promenu pokusao sam vise varijanti npr.

select vel_cen from proiz_cen where cen='11' and sif_rob='10051' and datum_promene = (select max(datum_promene) from proiz_cen)

pokusao i

select vel_cen from proiz_cen where cen='11' and sif_rob='10051' and datum_promene in (select max(datum_promene) from proiz_cen)

oba prethodna upita mi ne izbacuju nista

neka ideja?!

ovo je bez uslova za datum!
10051 732.560000 6/17/2010 2:30 PM
10051 654.480000 2/11/2011 9:55 AM
10051 654.480000 2/17/2011 10:08 AM
crvenom bojom je oznaceno ono sto zelim da dobijem!!!

Dopuna: 15 Jan 2013 10:35

a da bude lakse prvo je id pa vel_cen pa datum_promene :D


Pozdrav,

Prvi upit koji si postavio radi, ali dio upita (select max(datum_promene) from proiz_cen) vraca ti max datum u cijeloj tabeli, a ne posljednji datum gdje je cen='11' and sif_rob='10051'.

Pretpostavljam da ti treba nesto ovako:

select vel_cen from proiz_cen where cen='11' and sif_rob='10051' and datum_promene = (select max(datum_promene) from proiz_cen where cen='11' and sif_rob='10051' )

offline
  • PHP developer
  • Pridružio: 22 Mar 2006
  • Poruke: 3747
  • Gde živiš: 127.0.0.1

Prvo, subselect (select unutar select-a) je generalno lose resenje, narocito ako ga je moguce izbeci, a ovaj put jeste - i to prilicno jednostavno.

Ako ti treba record kad je izvrsena poslednja promena, mislim da bi trebalo da pokusas da sortiras po datumu izmene u opadajucem redosledu, i select-ujes prvi rekord:

SELECT vel_cen FROM proiz_cen WHERE cen='11' and sif_rob='10051' ORDER BY datum_promene DESC LIMIT 1

offline
  • soxxx 
  • Prijatelj foruma
  • Pridružio: 25 Maj 2005
  • Poruke: 1482
  • Gde živiš: Gracanica, Kosovo

Mislim da LIMIT ne radi na MSSQL, zato sam pitao koja baza je u pitanju, a pretpostavio sam da je MSSQL pa sam dao to resenje iznad. Coveka nema da se javi, tako da moramo da sacekamo... Wink

offline
  • PHP developer
  • Pridružio: 22 Mar 2006
  • Poruke: 3747
  • Gde živiš: 127.0.0.1

soxxx ::Mislim da LIMIT ne radi na MSSQL

In that case...

SELECT TOP 1 vel_cen FROM proiz_cen WHERE cen='11' and sif_rob='10051' ORDER BY datum_promene DESC

kao sto si i sam napisao par postova iznad Smile

Ko je trenutno na forumu
 

Ukupno su 908 korisnika na forumu :: 57 registrovanih, 9 sakrivenih i 842 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: 357magnum, 8u47, A.R.Chafee.Jr., AK - 230, Apok, bankulen, bestguarder, cavatina, comi_pfc, darkangel, delboy, Denaya, DonRumataEstorski, draggan, drimer, Excalibur13, FOX, Georgius, goxin, Grah0, havoc995, JOntra, jukeboxer, Kandrbandrdzilo, Karla, krkalon, Krvava Devetka, kybonacci, Lord Nem, Magistar78, Mercury, mile23, Milometer, nikoladim, NoOneEver Dreams, oldtimer, ozzy, pein, raso7, Ripanjac, Romibrat, royst33, S2M, Sančo, sasakrajina, Shinobi, Sirius, Srki94, Srle993, ss10, Steeeefan, stegonosa, Tragač, vukdra, wizzardone, zillbg, 125