[ igorpet @ 18.05.2016. 15:51 ] @
| Potreban mi je SQL upit, pa ako moze neka pomoc.
Imam 3 tabele.
Potrebno mi je da formiram 4-tu tabelu tako da se podaci kombinuju iz Tabele_0 i Tabele_4 i to prema instrukcijama iz tabele prirucnik.
Znaci, ako je TIP u tabeli prirucnik 0 onda procitati record iz Tabela_0 a ako je 4 onda procitati record iz Tabela_4 i nasloziti to prema BROJU u tabeli prirucnik.
Data je i tabela REZULTAT gde se vidi kako treba da izgleda 4-ta tabela.
Ne znam kako da formiram uslov koji bi citao iz jedne ili druge tabele u zavisnosti od vrednosti u polju.
I moguce je da se polje ID duplira u jednoj i drugoj tabeli, tako da spajanje tabela ne odgovara.
Hvala unapred.
[Ovu poruku je menjao igorpet dana 18.05.2016. u 17:12 GMT+1] |
[ dusans @ 18.05.2016. 16:24 ] @
1. Selektuj iz tabele Prirucnik sa inner join-om Tabela_0 po ID=ID_PITANJA i TIP=0
2. Selektuj iz tabele Prirucnik sa inner join-om Tabela_4 po ID=ID_PITANJA i TIP=4
3. Rezultat je unija 1. i 2. upita
4. Dizajn baze je očajan
[ djoka_l @ 18.05.2016. 16:27 ] @
Jedna mogućnost:
Code (sql):
INSERT INTO rezultat (id, podatak1, podatak2, podatak3)
SELECT id_pitanja, podatak1, podatak2, podatak3
FROM prirucnik, tabela_0
WHERE id_pitanja = id
AND tip = 0
UNION
SELECT id_pitanja, podatak1, podatak2, podatak3
FROM prirucnik, tabela_4
WHERE id_pitanja = id
AND tip = 4
edit: dusans uspeo pre mene da odgovori.
[ igorpet @ 18.05.2016. 17:06 ] @
Hvala na resenju!
Dizajn nije moj, samo mi treba da procitam neke podatke.
Ja sam razmisljao izgleda pogresno, da nadjem resenje preko CASE ili SWITCH-a pa me je to odvelo na stranputicu :), hvala jos jednom
I samo jos jedno pitanje:
Sta ako imam vise podataka za TIP (0,1,2,3,4,5 npr.)?
Da li moze da se sastavi upit tako da sam procita polje TIP? u slucaju da ima vise tabela iz kojih treba spojiti podatke
Copyright (C) 2001-2024 by www.elitesecurity.org. All rights reserved.