Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

select upit---dva "isprepletena" kriterija

[es] :: MS SQL :: select upit---dva "isprepletena" kriterija

[ Pregleda: 2815 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

roberto555
Croatia

Član broj: 64744
Poruke: 451
*.cmu.carnet.hr.



Profil

icon select upit---dva "isprepletena" kriterija23.10.2006. u 16:49 - pre 213 meseci
pozdrav,
radi se o sljedecem, u jednoj tabeli recimo registar su sljedece kolone:

ime - prezime - jmbg/pb - nositelj

jmbg/pb brojeva moze biti istih koliko god,no koliko god ih bilo za sve njih (jer imaju isti jmbg) ce moci biti samo 1 nositelj!
e sad ja sam u programu to napravio tako da ako se uspise jmbg/pb kojeg u bazi nema on mora bit nositelj,al se kod promjene to lako makne, ako se zeli recimo stavit neki drugi nositelj, te bi se tako moglo dogoditi da 10 ljudi ima isti jmbg a nijedan nije od tih 10 nositelj,isto tako nemogu biti dva nositelja, te sam sad htio staviti gumb na kojem ce ako ih ima prikazati sve ljude koji nemaju nositelja,
ovo s je jedan nonositeljem mi sluzi, za recimo, 10 trgovina ima isti PB, al samo 1 nositelj(obveznik) itd..manje bitno,al da ne ispadne sto ce mi to!

skoro svaki upit mi je vracao sve i svasta al nikako sto sam htio, i uvijek dobivam previse zapisa (400,1000 itd..) a u bazi na kojoj sam to provjeravao ih ima 40, negdje u spajanju grijesim,osim kad dodam distinct onda je nekako ok. sto s tice broja zapisa, al nije dobar rezultat!

u koloni nositelj se nalaze samo 'da ili 'ne'!



----Roberto----
 
Odgovor na temu

burner
Dragiša Rakić
BG

Član broj: 898
Poruke: 150
*.ADSL.neobee.net.



+1 Profil

icon Re: select upit---dva "isprepletena" kriterija23.10.2006. u 16:59 - pre 213 meseci
Malo ti je logika na raspustu. Dodaj još jednu kolonu ovde koja može da bude i autoinc, i neka ona bude primarni ključ. Razdvoj i jmbg/pib u posebne kolone, a dodaj i flag fizičko/pravno lice da ih razlikuješ. Jmbg bi trebalo da bude unique, a ako ti treba da neka firma ima više expozitura možda ne bi bilo loše da dodaš još jednu tabelu sa detaljnijim opisom expozitura... Onda radi join po primarnom ključu i sve bi trebalo da bude ok.
 
Odgovor na temu

burner
Dragiša Rakić
BG

Član broj: 898
Poruke: 150
*.ADSL.neobee.net.



+1 Profil

icon Re: select upit---dva "isprepletena" kriterija23.10.2006. u 17:01 - pre 213 meseci
Moderatoru briši ovu poruku
 
Odgovor na temu

roberto555
Croatia

Član broj: 64744
Poruke: 451
*.cmu.carnet.hr.



Profil

icon Re: select upit---dva "isprepletena" kriterija23.10.2006. u 18:41 - pre 213 meseci
"Moderatoru briši ovu poruku " -??

razdvoj ovo ono,,hm, ako sad idem to razdvojiti napravit cu vise posla nego da ne znam sta radim sa ovime, mislim posla sa promjenom programa,itd...koji je ispitan i sad se nadodaju neke sitnice, zato sam pitao jer nikako nisam uspio, i za primjer sam uzeo ovako banalnu stvar, a ti si mi sad dao konkretni odg.sto da napravim na tom primjeru,nije baš tako jednostavno to sad narpaviti što si rekao jer da je vec bi napravio!primarni kljuć je šifra u registru za pojedinu osobu...!nisam sve tu pisao! znači treba mi neki upit kojim neću mijenajti strukturu tabeli itd...(jer onda treba mijenjati i stored proc.....itd.),vec da to nadodam,al bez promjene tisucu stvari u programu,snaći ću se već! al svejedno hvala!

Lijep pozdrav!
----Roberto----
 
Odgovor na temu

burner
Dragiša Rakić
BG

Član broj: 898
Poruke: 150
*.ADSL.neobee.net.



+1 Profil

icon Re: select upit---dva "isprepletena" kriterija23.10.2006. u 19:24 - pre 213 meseci
Pa ona druga moja poruka je bila nešto sasvim bzvz, a pošto ne mogu sam da je obrišem nek je obriše mod :)

Pa ništa, ako nećeš da proširuješ tabelu, daj strukturu cele pa da vidimo ta da radimo sa tim upitom da dobiješ ono što ti treba......
 
Odgovor na temu

roberto555
Croatia

Član broj: 64744
Poruke: 451
*.cmu.carnet.hr.



Profil

icon Re: select upit---dva "isprepletena" kriterija23.10.2006. u 21:16 - pre 213 meseci
eto sad ću detaljno sve opisati, al treba mi ako je moguće ikako neki upit kojim ću to "izvadit" a bez da mijenjam kolone itd..,jer sve zajedno ima jedno 15 tabela,svaka ima nekoliko SP,a sve su nekako povezane, nije još sad toliki problem promjenit mi nešto na bazi,već u programu onda..zato bi najradije da složim upit koji bi to izvadio bez velikih zahvata:

upit bi iz tabele REGISTAR trebao izvadit sve osobe koje NISU nositelji niti imaju nositelja, da ovo pojasnim:

JMBG/PB 12345678 nositelj:NE -OSOBA1
JMBG/PB 12345678 nositelj:NE -OSOBA2
JMBG/PB 12345678 nositelj:DA -osoba3
JMBG/PB 22334455 NOSITELJ:DA -osoba4

znači može biti više istih jmbg/pb brojeva al SAMO JEDAN može biti nositelj, ovdje osoba1 i 2 imaju nositelja a to je osoba3,osoba 4 je ujedno i nositelj, kad bi bilo sve isto samo da ni osoba 3 nije nositelj, znaci:

JMBG/PB 12345678 nositelj:NE -OSOBA1
JMBG/PB 12345678 nositelj:NE -OSOBA2
JMBG/PB 12345678 nositelj:NE -osoba3
JMBG/PB 22334455 NOSITELJ:DA -osoba4

-moj select upit bi tu onda trebao prikazati, osobu 1,2,3, jer oni NISU nositelji NITI IMAJU NOSITELJA!
-na taj način bi ja onda korisniku "rekao"-e ovi ti nemaju nositelja,ispravi to! ja sam kod upisa novog u programu napravio da ako jmbg/pb ne postoji u bazi on mora bit nositelj, al se kod promjene podataka može staviti da nebude nositelj, -to nemogu zabraniti jer u tom slučaju onda neče moči ni promjeniti nositelja buduću da nemogu biti 2 nositelja a isti JMBG/PB!

-nadam se da sam dobro objasnio što mi treba, a sad eto kako izgleda ta tablica registar:

- sifra_u_registru - prezime - ime - jmbg - nositelj - sifra_ulice - sifra_mjesta - broj_poste - sifra_mjesnog_odbora - sifra_poslodavca - sifra_banke1 - sifra_banke2 - sifra_banke3 - racun_korisnika1 - racun_korisnika2 - racun_korisnika3 - glavni_racun

-mislim da je to sve, e sad tu postoje druge tabele iz kojih se "povlači" ovo sto tu ima samo sifru, ulica,mjesto,MO,poslodavac,banke...a također onda iz te tabele registar "povlaće" druge tabele(manje bitno sad)!

meni treba upit koji ce mi iz te tabele registar izvaditi ono gore kako sam opisao, netreba mi sve kako da sad vadi iz ovih tabeli iz kojih se povlaci(ulice,mjesta...) to cu samo "ugraditi" onda dosta je recimo da za te koje će "izvaditi" prikaze samo sifru_iz_registra ili neki drugi podatak,dalje cu sam!znaci treba mi kako da izvadim sve koji NISU nositelji I nemaju nositelja iz ove tabele(po primjeru gore na pocetku sa osobom123 ono)?!? -objasnjenje, upit bilo što,,,

unaprijed zahvaljujem!

Pozdrav!
----Roberto----
 
Odgovor na temu

chachka
Srđan Mijatov
Programer
BUS Computers
Kikinda

Član broj: 53780
Poruke: 576
*.dialup.neobee.net.

Sajt: www.baze-podataka.net


+4 Profil

icon Re: select upit---dva "isprepletena" kriterija23.10.2006. u 22:18 - pre 213 meseci
Nisi bas najjasniji, ali da probam.

Tabela
Code:

CREATE TABLE Registar (
  sifra_u_registru INTEGER NOT NULL PRIMARY KEY,
  jmbg CHAR(13) NOT NULL,
  nositelj CHAR(2) NOT NULL DEFAULT 'NE' CHECK (nositelj IN ('DA', 'NE')));

Test podaci
Code:

INSERT INTO Registar (sifra_u_registru, jmbg, nositelj) VALUES (1, '12345678', 'NE');
INSERT INTO Registar (sifra_u_registru, jmbg, nositelj) VALUES (2, '12345678', 'NE');
INSERT INTO Registar (sifra_u_registru, jmbg, nositelj) VALUES (3, '12345678', 'NE');

INSERT INTO Registar (sifra_u_registru, jmbg, nositelj) VALUES (4, '22334455', 'DA');

INSERT INTO Registar (sifra_u_registru, jmbg, nositelj) VALUES (5, '98765432', 'NE');
INSERT INTO Registar (sifra_u_registru, jmbg, nositelj) VALUES (6, '98765432', 'NE');
INSERT INTO Registar (sifra_u_registru, jmbg, nositelj) VALUES (7, '98765432', 'DA');

Upit
Code:

SELECT sifra_u_registru
  FROM Registar
 WHERE jmbg IN (SELECT jmbg
                  FROM Registar
                 GROUP BY jmbg
                HAVING MAX(nositelj) = 'NE'
                   AND MIN(nositelj) = 'NE');

Ovo mi je prvo palo na pamet.
"The best code is no code at all."
- Zidar (ES član)
"Biggest obstacle to learning
SQL is unlearning procedural
programming."
- Joe
Celko
"Minimize code, maximize data."
- A. Neil Pappalardo
 
Odgovor na temu

roberto555
Croatia

Član broj: 64744
Poruke: 451
*.cmu.carnet.hr.



Profil

icon Re: select upit---dva "isprepletena" kriterija24.10.2006. u 05:33 - pre 213 meseci
e super ovo radi kako treba, puno hvala svima na pomoći!!!!

Pozdrav!
----Roberto----
 
Odgovor na temu

[es] :: MS SQL :: select upit---dva "isprepletena" kriterija

[ Pregleda: 2815 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.