webForumDet fria alternativet

Hjälp med SQL

4 svar · 232 visningar · startad av Jaan

JaanMedlem sedan feb. 200340 inlägg
#1

Hej!

Jag håller på med en sida till min fotbollsklubb och har ett litet problem med en SQL fråga.
Jag har tre tabeller (lite förenklade):

-members
member_id
name

-match
match_id
match_result

-match_goals
goal_id
goal_member_id
assist_member_id
match_id

Jag lyckas inte få ut namn på målgörare och assist för en match till samma Record Set. Nån som kan hjälpa mig?

@ndersMedlem sedan juni 200032 969 inlägg
#2

Något sånt här, kanske?

SELECT mg.goal_id, m1.name AS goal_member, m2.name as assist_member
FROM members AS m1, members AS m2, match_goals AS mg
WHERE mg.goal_member_id = m1.member_id AND mg.assist_member_id = m2.member_id
AND mg.match_id=1
ORDER BY mg.goal_id

Flyttas från Access.

mvh

Engine^Medlem sedan dec. 20003 887 inlägg
#3

Bara en fundering här... ett mål måste ju inte ha en assist.

SELECT mg.goal_id, m1.name AS goal_member, m2.name AS assist_member
FROM (match_goals AS mg
INNER JOIN members AS m1 ON m1.member_id = mg.goal_member_id)
LEFT JOIN members AS m2 ON m2.member_id = mg.assist_member_id
WHERE mg.match_id = 1
ORDER BY mg.goal_id

Paranteserna är för Access skull.

JaanMedlem sedan feb. 200340 inlägg
#4

Hej!

Man tackar, det fungerade utmärkt.
Engine^ - helt rätt att vissa mål inte har någon assist. ;)

JaanMedlem sedan feb. 200340 inlägg
#5

En följdfråga...

Funderar på hur en SQL-fråga skulle se ut om man la goal_member_id och assist_meber_id i varsin tabell.

tex,
-goals
id
match_id
member_id

-assist
id
match_id
member_id

Får det inte att fungera...

131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
128 ms — hämta forumlista (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)