Välkommen hit...
Det finns ett forum för just SQL, bara så att du vet till nästa gång...
Din SQL-sats bör se ut ungefär såhär:
strSQL = "Select Distinct fältet from tabell order by fält"
6 svar · 483 visningar · startad av NETwork
Hallå! En svensk .net-konferens, äntligen! Håller på och pysslar lite med asp.net och c# så det passar ju perfekt.
En fråga när jag ändå håller på. Hur gör jag för att fylla en Dropdownlist med värden från en tabell? Jag har flera celler med samma värde men vill inte ha några dubletter... man kan väl ta bort dubletter direkt i sqlsatsen?
Välkommen hit...
Det finns ett forum för just SQL, bara så att du vet till nästa gång...
Din SQL-sats bör se ut ungefär såhär:
strSQL = "Select Distinct fältet from tabell order by fält"
Tack!
Men hur får man in värdena i dropdownlisten? Jag hämtar min data och fyller en dataset med den. Men sedan fastnar jag...
DataSet ds = new DataSet();
MyCommand.FillDataSet ds, "Resultatbors");
DataView dv = ds.Tables["Resultatbors"].DefaultView;
DropDown1.DataSource = dv;
DropDown1.DataBind();
Gör jag så här får jag ju bara namnet på kontrollen i min dropdownlist, inte värdena.
Kanske lite OT, men är det någon skillnad på distinct och group by?
Kom och tänka på det nu, och jag har juh ingen aning
Jag tror jag kommit lite längre... men det är fortfarande nåt fel här. Jag gör en arraylist och stoppar in värdena från den.
Den hittar rätt antal rader som ska in i dropdownlisten, men den hittar bara den data från den sista cellen i min tabell!
ArrayList values = new ArrayList();
for (int i=0;i\<ds.Tables\["Resultatbors"\].Rows.Count;i++){
values.Add (ds.Tables\["Resultatbors"\].Rows\[0\].ToString());
}
DropDown1.DataSource = values;
DropDown1.DataBind();
Ah, vilket pucko man är... blandade ihop rader med kolumner! Istället för [0] så skulle det naturligtvis vara [0]...
någon skillnad på distinct och group by
Ungefär som mellan elefanter och bananer
DISTINCT eliminerar dubletter. Exempelvis, plocka fram varje id för varje produkt som någonsin blivit beställd: SELECT DISTINCT produkt_id FROM beställning
GROUP BY grupperar värden från aggregatfunktioner. Exempelvis, räkna hur många gånger varje produkt blivit beställd: SELECT COUNT(*) AS antal, produkt_id FROM beställning GROUP BY produkt_id