/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
[mysql] søgning i to tabeller - igen :-(
Fra : Bo Rattenborg


Dato : 28-08-02 19:27

Jeg prøver igen....og håber at nogen kan hjælpe med en løsning eller evt.
henvise til en torturial.

Jeg roder lidt med en db til nogle billeder og har i den forbindelse
følgende spørgsmål som jeg håber nogen kan hjælpe med:

jeg har to tabeller
__________________
personer
id | efternavn | fornavn

med f.eks. følgende indhold:
1|jens|pedersen
2|hans|jensen

__________________
billede
id | personer|beskrivelse

med f.eks. følgende indhold:
1|1 2 3 1 4|billede 1
2|2|billede 2

så er det at jeg gerne vil søge på forskellige oplysninger vedr. billederne
(i øjeblikket kun personer), hvis jeg f.eks. søger på jens i tabellen med
billeder, så skal jeg jo
søge i både billeder samt personer, hvordan gøres dette, og er der evt. en
bedre måde at løse det på ?

I øvrigt så er ved jeg ikke helt hvordan jeg skal knytte Billede og Personer
sammen, som det er nu har jeg blot et tekstfelt i Billeder der indeholder
id'r fra Personer adskilt af et mellem rum, men hvordan gør man det
'rigtigt' ?

Mvh
Bo



 
 
news.stofanet.dk (29-08-2002)
Kommentar
Fra : news.stofanet.dk


Dato : 29-08-02 06:35

Dit problem er dit database design.
Det du forsøger at lave er en mange til mange relation. Det kan du ikke gøre
med kun 2 tabeller. Du skal have en tredie.

personer: person_id, efternavn, fornavn

billede: billede_id, beskrivelse

Og endelig relationen mellem de to.
optraeder_paa: billede_id, person_id

Så bliver forespørgslen relativ nem.

select billede_id from billeder
join optraeder_paa on billeder.billede_id = optraeder_paa.billede_id
join personer on personer.person_id = optraeder_paa.person_id where
personer.fornavn='jens'

Du skal måske prøve at finde en bog om database design, og sql.
Held og lykke.

Flemming


"Bo Rattenborg" <bo.rattenborg@[nospam]mail.dk> wrote in message
news:3d6d15e5$0$719$ba624c82@nntp04.dk.telia.net...
> Jeg prøver igen....og håber at nogen kan hjælpe med en løsning eller evt.
> henvise til en torturial.
>
> Jeg roder lidt med en db til nogle billeder og har i den forbindelse
> følgende spørgsmål som jeg håber nogen kan hjælpe med:
>
> jeg har to tabeller
> __________________
> personer
> id | efternavn | fornavn
>
> med f.eks. følgende indhold:
> 1|jens|pedersen
> 2|hans|jensen
>
> __________________
> billede
> id | personer|beskrivelse
>
> med f.eks. følgende indhold:
> 1|1 2 3 1 4|billede 1
> 2|2|billede 2
>
> så er det at jeg gerne vil søge på forskellige oplysninger vedr.
billederne
> (i øjeblikket kun personer), hvis jeg f.eks. søger på jens i tabellen med
> billeder, så skal jeg jo
> søge i både billeder samt personer, hvordan gøres dette, og er der evt. en
> bedre måde at løse det på ?
>
> I øvrigt så er ved jeg ikke helt hvordan jeg skal knytte Billede og
Personer
> sammen, som det er nu har jeg blot et tekstfelt i Billeder der indeholder
> id'r fra Personer adskilt af et mellem rum, men hvordan gør man det
> 'rigtigt' ?
>
> Mvh
> Bo
>
>



Bo Rattenborg (30-08-2002)
Kommentar
Fra : Bo Rattenborg


Dato : 30-08-02 08:41

> Dit problem er dit database design.

tænkte jeg nok :-|

> Det du forsøger at lave er en mange til mange relation. Det kan du ikke
gøre
> med kun 2 tabeller. Du skal have en tredie.
> personer: person_id, efternavn, fornavn
>
> billede: billede_id, beskrivelse
>
> Og endelig relationen mellem de to.
> optraeder_paa: billede_id, person_id

> Så bliver forespørgslen relativ nem.
>
> select billede_id from billeder
> join optraeder_paa on billeder.billede_id = optraeder_paa.billede_id
> join personer on personer.person_id = optraeder_paa.person_id where
> personer.fornavn='jens'

Ok, men vil det sige at der er en post i optraeder_paa for hver person der
optræder på et billede ?

Altså f.eks.:
id|billede_id|person_id
1|1|2
2|1|3
3|1|4

> Du skal måske prøve at finde en bog om database design, og sql.

er der evt. nogen der kan anbefale en go' bog vedr. mySQL - gerne dansk ?

Minder sql og MySQL så meget om hinanden at en SQL bog også kan anvendes ?

Bo



Niels Andersen (30-08-2002)
Kommentar
Fra : Niels Andersen


Dato : 30-08-02 08:58

Bo Rattenborg wrote in <3d6f2192$0$641$ba624c82@nntp03.dk.telia.net>:
> Minder sql og MySQL så meget om hinanden at en SQL bog også kan anvendes ?

SQL er en standard, MySQL er en implementation af standerden.

Der findes mange andre implementationer af SQL, fx. PostGreSQL og Microsoft
SQL.
De følger alle sammen mere eller mindre SQL-standarden. Men nogle ting er
udeladt, nogle ting har folk selv tilføjet, og nogle ting er implementeret
forkert.

Dvs. de er alle grundlæggende ens, og uanset hvilken server du vælger, så er
det godt at kunnne SQL.
Men du kan ikke undgå at skulle læse om de enkelte implementationer
alligevel.

Dvs: Der er en god ide at læse en bog om SQL. Men husk at du skal også læse
om MySQL. Om ikke andet, så i hvert fald det kapitel om fravigelser fra
standarden.

--
Mvh.

Niels Andersen
(la nels. anersyn.)

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste