Rudde Skrevet 12. februar 2014 Del Skrevet 12. februar 2014 Hei. Jeg prøver å hente ut noe ID info fra forskjellige tabeller med en query. Jeg ønsker: SELECT refId FROM referrals WHERE referral = 'google.com' SELECT ipId FROM ips WHERE ip = '127.0.0.1' kombinert til en query. Problemet er at ingen av de har felles info. radene i referrals er refId og referral mens radene i ips er ip og ipId. SELECT ipId, refId FROM ips, referrals WHERE ip = '127.0.0.3' OR referral = 'google.com' Her er det ikke match på ip og den vil returnere alle referral matches * ips rader Og hvis jeg bytter ut OR med AND får jeg såklart ingen treff selv om det finnes en refId for google.com både referral og ip er unike rader. Jeg har lyst på ID'en til ønsket kriterier om den ikke matcher kriteriet vil jeg at det skal returneres NULL. Lenke til kommentar
cronbach alpha Skrevet 12. februar 2014 Del Skrevet 12. februar 2014 Ser ikke helt hva du er ute etter, i relasjonsdatabase har du ting som er forent med hverandre på en eller annen form, en av variablene finnes i begge tabeller, der er en link mellom en variabel i en tredje tabell og to andre, osv. Om du skal få det utført i en setning kan du prøve med dette: SELECT refId, ipId FROM referrals r, ips i WHERE r.referral = 'google.com' AND i.ip = '127.0.0.1'; Lenke til kommentar
quantum Skrevet 13. februar 2014 Del Skrevet 13. februar 2014 (endret) SELECT refId FROM referrals WHERE referral = 'google.com UNION SELECT ipId FROM ips WHERE ip = '127.0.0.1' ... forutsetter at feltene er av nogenlunde samme type ... Endret 13. februar 2014 av quantum Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå