Novo

Forum kao aplikacija na telefonu

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

Kako selektovati svaki drugi zapis iz pridruzene tabele?

  • 6 odgovora
  • 3.822 pregleda

Najnovija ↓

Kako selektovati svaki drugi zapis iz pridruzene tabele? 15.01.2012. u 20:41 · pre 180 meseci #1
Pozdrav,

imam dvije tabele ZAPISI i ISTORIJA, prilikom svake promjene zapisa u istoriju cu unjeti zapis_id, vrijeme_izmjene i novi_status_zapisa.
Zapis moze biti promijenjen nekoliko puta, a ja bih trebao da selektujem sve zapise sa pridruzenim istorijama samo poslije prve promjene.

Nesto kao: SELECT * FROM zapisi z JOIN istorija i on i.zapis_id = z.zapis_id ... e sada mi treba zapis samo sa svojom drugom promjenom.

hmmm, nisam siguran da li sam ovo jasno napisao :)
Potpis
...ko se jednom o mlijeko opece taj i u jogurt duva...
Re: Kako selektovati svaki drugi zapis iz pridruzene tabele? 15.01.2012. u 22:38 · pre 180 meseci #3
Pozdrav Bogdane,

ako mislis na koncept baze podataka, vjerujem da nije dobar, ali sada se ne moze mijenjati. Ako mislis na koncept pitanja :) pokusacu ponovo...

Htio bih da selektujem i grupisem zapise tako sto cu dobiti svaki zapis samo jednom ali sa istorijom koja je upisana nakon druge izmjene zapisa.
Potpis
...ko se jednom o mlijeko opece taj i u jogurt duva...
Re: Kako selektovati svaki drugi zapis iz pridruzene tabele? 15.01.2012. u 23:27 · pre 180 meseci #4
koncept baze - kompletno ne valja ako ti ikad treba "svaki drugi" bilo sta...

"e sada mi treba zapis samo sa svojom drugom promjenom"
"sa istorijom koja je upisana nakon druge izmjene zapisa"

sta ovo znaci ?! aj lepo ti ovde copy paste create table i neke inserte koji napune te tabele sa nekom datom pa onda napisi sta bi teo da dobijes nazad

Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Re: Kako selektovati svaki drugi zapis iz pridruzene tabele? 15.01.2012. u 23:55 · pre 180 meseci #5
Sto se tice baze ovo je vanredna situacija, aplikacija sama po sebi ovakav rezultat nikada nece traziti, problem je sto su neki statusi rucno izmjenjeni, da ne ulazim u nepotrebne detalje :)

ovo su tabele

Code:

+-------------+----------+
| zapis_id    | staus    |
+-------------+----------+
|    1        | uplacen  |
|    2        | uplacen  |
+-------------+----------+

Code:

+----------------+-------------+-----------+--------------------------+
| istorija_id    | zapis_id    | status    | vijeme                   |
+----------------+-------------+-----------+--------------------------+
|    1           | 1           | init      | 2011-11-01 11:00:00      |
|    2           | 1           | odbijen   | 2011-12-01 12:00:00      |
|    3           | 1           | odobren   | 2011-13-01 13:00:00      |
|    4           | 1           | uplacen   | 2011-14-01 14:00:00      |
|    5           | 2           | init      | 2012-11-01 11:00:00      |
|    6           | 2           | odobren   | 2012-12-01 12:00:00      |
|    7           | 2           | uplacen   | 2012-13-01 13:00:00      |
+----------------+-------------+-----------+--------------------------+


ja bih htio da dobijem sljedeci rezultat
Code:

+----------------+-------------+-----------+--------------------------+
| istorija_id    | zapis_id    | status    | vijeme                   |
+----------------+-------------+-----------+--------------------------+
|    2           | 1           | odbijen   | 2011-12-01 12:00:00      |
|    6           | 2           | odobren   | 2012-12-01 12:00:00      |
+----------------+-------------+-----------+--------------------------+


nadam se da je sada jasnije.
Pozdrav.
Potpis
...ko se jednom o mlijeko opece taj i u jogurt duva...
Re: Kako selektovati svaki drugi zapis iz pridruzene tabele? 16.01.2012. u 00:44 · pre 180 meseci #6
nije nesto al ce da radi iz prve :D
za "jednom" nije frka

Code:

SELECT zapis.zapis_id, 
  (SELECT istorija.ist_id 
      FROM istorija WHERE istorija.zapis_id=zapis.zapis_id 
      ORDER BY istorija.vrijeme limit 1,1) as drugaistorijaid, 
  (SELECT istorija.opis 
      FROM istorija WHERE istorija.zapis_id = zapis.zapis_id 
      ORDER BY istorija.vrijeme limit 1,1) as istorijaopis  
FROM zapis;

Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme