Avatar billede Slettet bruger
13. januar 2013 - 13:04 Der er 4 kommentarer

Subselect?

Hej alle!

Har gang i et lille projekt. Og i den forbindelse kunne jeg godt tænke mig at sætte to SELECT sammen.
Hvordan gøres dette på den bedste måde?

Den første SELECT:

SELECT friendship_user_id FROM friendship WHERE friendship_friend_id = '".$_SESSION['user_id_hash']."' AND friendship_confirmed_at = 'NULL'

Den anden SELECT:

SELECT * FROM users WHERE user_id_hash '".$row['friendship_user_id']."'

Hvor det der findes i $row i den nederste select er det man får ud i den øverste.
Har kigget på alt muligt med innerjoin, men forstår det simpelthen ikke. Er det muligt man kan få en forklaring?


På forhånd tak,
Anders
Avatar billede arne_v Ekspert
13. januar 2013 - 18:05 #1
Du skal bruge en JOIN.

Noget a la:

SELECT * FROM users JOIN friendshop ON users.user_id_hash = friendship.friendship_user_id WHERE ....
Avatar billede arne_v Ekspert
13. januar 2013 - 18:06 #2
... friendship_confirmed_at = 'NULL'

ser ioevrigt dybt suspekt ud.
Avatar billede Slettet bruger
14. januar 2013 - 10:27 #3
Tak for hjælpen ind til videre, arne.

Hvis du kan forklare mig hvorfor det ser suspekt ud, vil det være dejligt.

Idéen ved det hele:

Jeg har to tabeller. En som hedder users og en som hedder friendship.

Jeg skal så lave en funktion, som lister brugernavnene på de venneanmodninger som ikke er godkendt endnu.

I users har jeg: user_id_hash og user_name

I friendship har jeg: friendship_user_id, friendship_friend_id og friendship_confirmed_at.
Avatar billede arne_v Ekspert
15. januar 2013 - 01:55 #4
='NULL'

tester om feltet indeholder en streng 'NULL' som intet har med NULL at goere
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester