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

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Hente random SQL entry ud som ikke findes ~
Fra : Thomas Løjmann Jørge~


Dato : 22-07-04 14:01

Hej gruppe,

jeg har denne sql query

SELECT *
FROM sites
JOIN votes USING (sid)
WHERE (votes.sid <> sites.sid)
AND (votes.pid = '$pid')
ORDER BY RAND() LIMIT 0,1

det som jeg håbede den gjorde, var at hente et entry ud fra tabellen
sites som IKKE findes i votes hvor pid og sid er det samme.

Dog henter den intet ud selvom votes er tom og sites indeholder noget.
$pid ER sat.

Nogle som kan hjælpe?

/Thomas

 
 
Tonni Aagesen (22-07-2004)
Kommentar
Fra : Tonni Aagesen


Dato : 22-07-04 14:22

Thomas Løjmann Jørgensen wrote:

> jeg har denne sql query

Spørgsmål om database og SQL besvares bedst i news:dk.edb.database -
XFUT sat til denne gruppe.

--
Mvh
Tonni Aagesen
www.cazoo.dk

Thomas Løjmann Jørge~ (22-07-2004)
Kommentar
Fra : Thomas Løjmann Jørge~


Dato : 22-07-04 14:37

On Thu, 22 Jul 2004 15:21:48 +0200, Tonni Aagesen <goto@dev.null>
wrote:

>Thomas Løjmann Jørgensen wrote:
>
>> jeg har denne sql query
>
>Spørgsmål om database og SQL besvares bedst i news:dk.edb.database -
>XFUT sat til denne gruppe.

Jeg glemte vidst at sige, at det var i forbindelse med PHP - så er
gruppen vidst rigtig nok. Beklager!

Jacob Atzen (22-07-2004)
Kommentar
Fra : Jacob Atzen


Dato : 22-07-04 14:44

Thomas Løjmann Jørgensen <lojmann@lojmann.dk> writes:

> Jeg glemte vidst at sige, at det var i forbindelse med PHP - så er
> gruppen vidst rigtig nok. Beklager!

Nej, dit spørgsmål har intet med PHP at gøre. Det kan godt være du
bruger den query i forbindelse med noget PHP, men dit spørgsmål går
udelukkende på SQL - og det hører hjemme i databasegruppen.

--
Med venlig hilsen
- Jacob Atzen

Thomas Løjmann Jørge~ (22-07-2004)
Kommentar
Fra : Thomas Løjmann Jørge~


Dato : 22-07-04 22:02

Det som er mit problem er at jeg har 2 tabeller i min mysql database.

De relater til hinanden baseret på et felt som hedder "sid".
Jeg skal hente en tilfældig række ud af den ene tabel, men kun hvis
der i den anden tabel ikke er en række som indeholder samme "sid" samt
et "pid" som er sat via en session (php)

Jeg har pt.:

SELECT sitename, siteurl, sitebeskrivelse, sites.sid AS sid
FROM sites
LEFT JOIN votes ON (sites.sid=votes.sid)
WHERE votes.sid IS NULL
AND votes.pid = '$pid'
ORDER BY RAND() LIMIT 1

MEN den frasorter ALLE entrys i sites hvor der er en entry i votes med
samme sid, den bruger slet ikke pid til noget.... DET forstår jeg ikke
en krone af?

HJÆLP!

/Thomas

Bent Stigsen (23-07-2004)
Kommentar
Fra : Bent Stigsen


Dato : 23-07-04 02:33

Thomas Løjmann Jørgensen wrote:
> Det som er mit problem er at jeg har 2 tabeller i min mysql database.
>
> De relater til hinanden baseret på et felt som hedder "sid".
> Jeg skal hente en tilfældig række ud af den ene tabel, men kun hvis
> der i den anden tabel ikke er en række som indeholder samme "sid" samt
> et "pid" som er sat via en session (php)
>
> Jeg har pt.:
>
> SELECT sitename, siteurl, sitebeskrivelse, sites.sid AS sid
> FROM sites
> LEFT JOIN votes ON (sites.sid=votes.sid)
> WHERE votes.sid IS NULL
> AND votes.pid = '$pid'
> ORDER BY RAND() LIMIT 1
>
> MEN den frasorter ALLE entrys i sites hvor der er en entry i votes med
> samme sid, den bruger slet ikke pid til noget.... DET forstår jeg ikke
> en krone af?

Hvis "votes.sid IS NULL" er sandt, så vil "votes.pid = '$pid'" altid
være falsk. Så hele udtrykket vil altid være falsk, dvs. intet output.

Ikke helt sikker på jeg forstår betydningen af din pid. Er det noget i
den her stil du vil ha':
....LEFT JOIN votes ON (sites.sid=votes.sid) and votes.pid = '$pid'
WHERE votes.sid IS NULL...

Eventuelt post noget eksempel data og forventet output.

/Bent

Thomas Løjmann Jørge~ (23-07-2004)
Kommentar
Fra : Thomas Løjmann Jørge~


Dato : 23-07-04 08:39

On Fri, 23 Jul 2004 03:33:27 +0200, Bent Stigsen <ngap@thevoid.dk>
wrote:

>Ikke helt sikker på jeg forstår betydningen af din pid. Er det noget i
>den her stil du vil ha':
>...LEFT JOIN votes ON (sites.sid=votes.sid) and votes.pid = '$pid'
>WHERE votes.sid IS NULL...

YES, der var den... Hvorfor fa'n jeg ikke lige har tænkt på det sådan
skal jeg ikke kunne sige, men det er jo logisk nok at den skal se
sådan ud...

Mange tak for hjælpen :)

/Thomas

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste