24. februar 2002 - 00:21Der er
24 kommentarer og 1 løsning
problem, pga. STOR db...
Nå, lidt svært at forklare, men... Jeg har en db, med varer hvori der er et felt kaldet "producent" dette felt indeholder ofte samme data... Jeg skal så have listet alle producenter, naturligvis uden at de gentages hele tiden, dette er ikke noget problem at ordne. Mit problem består i at for at liste producenterne skal jeg loope samtlige 15-20.000 records igennem... Hvordan undgår jeg dette???
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
du laver en ny tabel som du kalder f.eks. producenter, så skriver du i din anden tabel f.eks. 1, 2 eller whatever foren producent id det er... Altså giver du hver producent et Id nummer, så står de kun listet en gang i en tabel....
Du skal ikke undgå en ny tabel. Du skal lave det ordentligt. Man kan godt fifle rundt for sjov med små og få data til eget brug, men når du skal gøre det professionelt, og formentlig tager penge for det, kan du ikke tillade dig at levere en amatørløsning.
erikjacobsen > Du har naturligvis ret, men det ligger nu en gang sådan at jeg ikke har kunnet overbevise ham jeg laver siden for om at han skal lave om på den måde han taster data ind i databasen på, og derfor vil det besværliggøre hans daglige arbejde meget at skulle lave en ekstra tabel... Hvad mener du med databaseteori?
Strukturen af databasen har da intet at gøre med den måde der indtastes på i brugergrænsefladen. Min anbefaling er at du følger et kursus i databaser - engang...
Jeg vil foreslå at du laver et index på producent, og så benytter dig af erikjakobsens query: select distinct producent from dintabel Husk blot, at hvis du jævnligt opdaterer databasen at du skal opdatere indexet.
Jeg er udemærket klar over at det ikke er en optimal løsning, og det er såmænd heller ikke noget jeg normalt ville lave, men når nu dem jeg arbejder for vil have det på den måde, så laver jeg det på den måde... I et hvert andet tilfælde ville jeg naturligvis gøre som i(erikjacobsen og viperfx102) har forslået, og det var da også hvad jeg i første omgang forsøgte at overbevise min chef om...
Men anyway... Mange tak for hjælpen alle sammen...
Hvis jeg har forstået problemmet rigtigt, skal du bare have en liste over alle producenter ud fra din vare tabel, uden absolut at skulle løbe dem alle igennem.
Brug følgende SQL-sætning "SELECT * FROM Vare GROUP BY Producent
pcmike > Jeg har fået svar ;-) Men min liste indeholder 15 - 20000 varer fordelt på måske 50 producenter... Løsningen var "select distinct producent from dintabel"
Erikjacobsen > hvis du ønsker point, bedes du liige oprette et svar...
husk at smide et index på din tabel, det gør inserts lidt langsommere, mens søgehastigheden optimeres
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.