» »

sql, negacija ..

sql, negacija ..

BRBR ::

master
id  ime
1   regrat 


detail
id  taxonomija
1   plantae
1   ...
1   ...
1   taraxacum


select distinct m.ime 
from master m join detail d on m.id = d.id
where d. taxonomija = 'plantae'


Super, zdaj imam vse kar spada pod plantae.

Kako pa naj, optimalno, dobim, vse kar pa ne spada pod plantae ?

Math Freak ::

where d. taxonomija != 'plantae'
?

BRBR ::

Ne. regrat bo še vedno znotraj rezultatov ker 'taraxacum' != 'plantae'

Ok, morda sem slabo razložil.
Ne sme najti nobene od rastlin.

Zgodovina sprememb…

  • spremenil: BRBR ()

klemenSLO ::

<>
Life is not measured in minutes, but in MOMENTS...

Math Freak ::

Ni mi jasno zakaj si združil celo klasifikacijo v en stolpec. plantae, taraxacum itd. bi morali imeti vsak svoj stolpec. Kako boš dobil recimo znanstveno ime regrata iz tabele detail?

dmok ::

select m.ime
from master m
where not exists(select d.id from detail d where d.id = m.id and d.taxonomija = 'plantae')

BRBR ::

ja, to je to, pa še 'where in' varianta je.
Samo moj 'gut filling' mi pravi, da to ni najboljše kar se tiče hitrosti, čeprav zaenkrat zgleda OK.


Ni mi jasno zakaj si združil celo klasifikacijo v en stolpec. plantae, taraxacum itd ...


Zato, ker je taksonomija krneki.

Za eno rastlino imaš podatek za npr. subphylum za drugo pa ne,...pa četudi na dnu taxonomije prideta skupaj v istem genusu.
In itak bi imel potem tabelo z 'milijom' stolpci in in milijon null vrednostmi.

Zgodovina sprememb…

  • spremenil: BRBR ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

SQL vprasanje (strani: 1 2 )

Oddelek: Programiranje
688053 (4732) BivšiUser2
»

[SQL] teževa pri iskanju zapisov

Oddelek: Programiranje
102024 (1614) lopow
»

[SQL] - združitev glede na iste vrednosti

Oddelek: Programiranje
131312 (954) tx-z
»

Baze ter relation med njimi

Oddelek: Programiranje
153149 (2710) Marat
»

Normalizirana struktura - query

Oddelek: Programiranje
191671 (1291) frudi

Več podobnih tem