Kom ihåg mig?
Home Menu

Menu


Knepig SQL fråga

Ämnesverktyg Visningsalternativ
Oläst 2008-04-17, 15:17 #1
blixtsystems blixtsystems är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2005
Inlägg: 442
blixtsystems blixtsystems är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2005
Inlägg: 442
Håller på och bygger en funktion för att söka reda på pokerhänder ur en MySQL databas, men har kört fast.

Problemet är att plocka fram händer med specifika start händer för en spelare.
Dessa är de relevanta fälten i "cards" tabellen:
hand_id
player_id
value

Som exempel så vill jag hitta "hand_id" för händer där en spelares start hand är ett Ess ("A") och en Dam ("Q").
Det knepiga är att jag har designat databasen så att varje kort har en separat rad i "cards" tabellen, och det är besvärligt att ändra design nu.

Alltså är vad jag försöker göra är att plocka ut "hand_id" ur "cards" tabellen där "value" på en rad är "A" och på andra är "Q" men båda har samma "hand_id" och "player_id".

Någon som vet om det är möjligt och kanske t.o.m. har några tips om hur?
blixtsystems är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-04-17, 16:12 #2
orreborres avatar
orreborre orreborre är inte uppkopplad
Flitig postare
 
Reg.datum: Apr 2003
Inlägg: 309
orreborre orreborre är inte uppkopplad
Flitig postare
orreborres avatar
 
Reg.datum: Apr 2003
Inlägg: 309
Hmm, det första jag kom att tänka på var att göra 2 referenser till samma tabell, ex:

"SELECT a.hand_id FROM tbl a, tbl b WHERE a.player_id = b.player_id AND a.hand_id = b.hand_id AND ((b.value = 'A' AND a.value = 'Q') OR (a.value = 'A' AND b.value = 'Q'))"

Dock har det varit en hård arbetsdag och hjärnan är lite slö nu.
orreborre är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-04-17, 16:22 #3
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
Edit: tänkte skriva samma sak...

Det bör som orreborre skrev fungera om du jämför mot tabellen själv.
__________________
Full-stack developer, free for smaller assignments
tartareandesire är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-04-17, 16:38 #4
blixtsystems blixtsystems är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2005
Inlägg: 442
blixtsystems blixtsystems är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2005
Inlägg: 442
Tackar!
Om jag har förstått rätt är då "a" samt "b" alias för olika instanser av samma tabell?
Låter lovande...skall testa lite.
blixtsystems är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-04-17, 16:57 #5
blixtsystems blixtsystems är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2005
Inlägg: 442
blixtsystems blixtsystems är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2005
Inlägg: 442
Ok...fick ihop det och det funkar utmärkt, så jag ville bara tacka igen!
blixtsystems är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-04-17, 16:59 #6
orreborres avatar
orreborre orreborre är inte uppkopplad
Flitig postare
 
Reg.datum: Apr 2003
Inlägg: 309
orreborre orreborre är inte uppkopplad
Flitig postare
orreborres avatar
 
Reg.datum: Apr 2003
Inlägg: 309
Perfekt!
orreborre är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 21:30.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017