webForumDet fria alternativet

Omröstning

4 svar · 210 visningar · startad av Melea

MeleaMedlem sedan juli 20032 667 inlägg
#1

Hejhej

Får inte riktigt till det, såhär ser det ut

SELECT p.ID, p.Question, pa.Poll_ID, pa.Alternative
FROM tbl_poll p
INNER JOIN tbl_poll_alternative pa
ON p.ID = pa.Poll_ID
CROSS JOIN tbl_poll AS pmax
GROUP BY p.ID, p.Question, pa.Poll_ID, pa.Alternative
HAVING p.ID = MAX(pmax.ID)

Men när jag loopar ut Question och Alternative så skrivs Question ut lika många gånger som det finns Alternative. Vad har jag missat? :OO

Tabellstrukturen är

[b]tbl_poll[/b]
ID
Question

[b]tbl_poll_alternative[/b]
ID
Poll_ID
Alternative
LarsGMedlem sedan dec. 200012 465 inlägg
#2

Inget. Det är så join fungerar. Vad hade du förväntat dig?

MeleaMedlem sedan juli 20032 667 inlägg
#3

Vill att frågan ska skrivas ut, och sedan alla alternativ som har samma Poll_ID som frågans ID.

LarsGMedlem sedan dec. 200012 465 inlägg
#4

Hanteras lämpligen i applikationen. Skriv bara ut frågan vid första posten.

MeleaMedlem sedan juli 20032 667 inlägg
#5

Okej, visste inte om det fanns någon funktion i SQL som gjorde samma sak.
Tack!

Genererad på 388 ms · cache AV · v20260730165559-full.f96bc7eb