/ 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
På betingelse af
Fra : Tobber


Dato : 31-01-05 22:45

Hej

Jeg er ikke stærk til DB. Jeg har det problem at jeg anvender en SELECT til
at udtrække alle rækker, WHERE id = a. Vel det har prøvet så tit...

Men heertil kommer at jeg skal kun vise rækkerne (på en hjemmeside) når en
række andre betingelser fra fire andre tabeller er opfyldt.

Der er tale om en mysql: og jeg har forsøgt med:

SELECT * FROM tabel1, tabel2, tabel3, tabel4 WHERE tabel1.id = a AND
tabel2.mappeID = tabel3.mappeID AND tabel3.userID = tabel4.useerID osv. Men
det giver bare alt for mange resultater.

jeg gennemkører arrayet jeg får ud af det med while(result=...).

Hvordan gør jeg? Jeg troede AND betød at alle betingelser skulle være
opfyldt!

På forhånd tak
Tobber Esbjerg



 
 
Jens Gyldenkærne Cla~ (31-01-2005)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 31-01-05 22:56

Tobber skrev:

> SELECT * FROM tabel1, tabel2, tabel3, tabel4 WHERE tabel1.id =
> a AND tabel2.mappeID = tabel3.mappeID AND tabel3.userID =
> tabel4.useerID osv.

Hvordan hænger tabel1 sammen med de andre tabeller? Som
forespørgslen står herover har du en forbindelse (et join) mellem
tabel2, tabel3 og tabel4 (de tre sidste kriterier), men ingen
forbindelse mellem tabel1 og resten.

Derfor vil forespørgslen returnere samtlige kombinationsmuligheder
af de to postsæt (select * from tabel1 where id = a) og (select *
from tabel2, ...)

Det du formentlig mangler er en forbindelse mellem tabel1 og en af
de andre tabeller - fx tabel1.id = tabel2.id. Uden at vide hvad de
enkelte tabeller indeholder og hvad du skal have ud, er det svært
at gætte på hvor dit join skal lægges. Hvis du ikke selv kan finde
frem til det, så prøv at forklare hvad hver enkelt tabel indeholder
og hvordan den er relateret til de andre tabeller.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

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

Månedens bedste
Årets bedste
Sidste års bedste