FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Flitig postare
|
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? |
||
![]() |
![]() |
![]() |
#2 | |||
|
||||
Flitig postare
|
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. |
|||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Supermoderator
|
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 |
||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Flitig postare
|
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. |
||
![]() |
![]() |
![]() |
#5 | ||
|
|||
Flitig postare
|
Ok...fick ihop det och det funkar utmärkt, så jag ville bara tacka igen!
|
||
![]() |
![]() |
![]() |
#6 | |||
|
||||
Flitig postare
|
Perfekt!
|
|||
![]() |
![]() |
Svara |
|
|