webForumDet fria alternativet

Koppla ihop två fält i samma tabell

Databaser & SQL

4 svar · 223 visningar · startad av m_soderlund

Medlem sedan sep. 20026 425 inlägg
Frågan#1

Jag har en tabell, tbl kan vi kalla den för. I den tabellen har vi fälten dbid, orderlist samt campaign. Ur campaign ska jag inte visa dubletter - det vill säga att jag använder Distinct(). Jag skulle vilja skriva ut unika värden ur campaign och sedan skriva ut respektive orderlist som finns för den kampanjen.

Så här ser tabellen u:

dbid orderlist campaign

1 | cd_1 | kamp_digital
2 | cd_2 | kamp_familj
3 | cd_3 | kamp_pl
4 | cd_4 | kamp_digital

Och jag skulle alltså vilja skriva ut exempelvis orderlist och unika kampanjer. Jag tror mig kunna veta att en LEFT/RIGHT JOIN eller INNER/OUTER JOIN skulle falla väl på plats, men får inte riktigt till det.

Tacksam för hjälp.

Medlem sedan dec. 200012 464 inlägg
#2

Hur vill du att resultattabellen skall se ut?

(Om det är som jag tror så är detta enklast att hantera i klienten och inte i SQL.)

Distinct är inte en funktion så att skriva distinct() är fel.

Medlem sedan sep. 20026 425 inlägg
#3

Jag vill att resultatet ska bli värden i en dropdownlist. orderlist ska vara det som är value i option-taggarna, campaign ska vara det som syns när man surfar på webbsidan sen.

<option value="<%=orderlist%>"><%=campaign%></option>

Men: eftersom det finns två kampanjer som är lika, kamp_digital så skulle jag vilja att value i option då blir cd_1;cd_4 eller dylik.
Lite småkrångligt är vad det är.

Och angående distinct har ju du rätt, LarsG. ;)

Medlem sedan juni 200032 967 inlägg
#4

Det får du hantera i applikationen / på din asp-sida.

Mvh,

Medlem sedan sep. 20026 425 inlägg
#5

Hehe, jag antog det. ;)
Då får jag väl försöka komma runt problemet. Tack! :D

256 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)