05. juni 2008 - 21:16Der er
16 kommentarer og 1 løsning
Grup. og sort. spm 833848 - svar spg virker ikke.
Hej spg, jeg var tisyneladende lidt for hurtigt til at acceptere dit svar. Problebet kommer når jeg indsætter værdier fra forespørgslen, altså forespørgslen i den oprindelige forespørgsel så virker grupperingen ikke mere, så får jeg igen 3x2 poster ????
De seneste år har efterladt fødevareindustrien med mavepine pga. stigende producent- og importpriser, stigende energipriser og manglende arbejdskraft.
4. juli 2024
Slettet bruger
05. juni 2008 - 21:42#1
Hej, jeg har lige set din respons fra spm 833848... du må undskylde men jeg mente underforstået at dit autonr skulle være primærnøglen, det er det som er hele pointen. Så flot at jeg ikke nævner det i mit svar!~)
Eks. (ID er primærnøgle og autonr)
DinTabel: ID, IDno1 1, 51 2, 52 3, 51 4, 52 5, 51
DinForespørgsel: SELECT DinTabel.IDno1, Max(DinTabel.ID) AS MaksOfID FROM DinTabel GROUP BY DinTabel.IDno1;
Giver flg. resultat: IDno1, ID 51, 5 52, 4
Så sætter du det sammen, sådan her:
SELECT DinForespørgsel.IDno1, DinTabel.IDno2, DinTabel.ACreg, osv... FROM DinTabel INNER JOIN DinForespørgsel ON DinTabel.ID = DinForespørgsel.MaksOfID;
Synes godt om
Slettet bruger
05. juni 2008 - 21:43#2
Den jeg kalder DinTabel er selvfølgelig din nuværende tabel, men med et ekstra ID felt. Måske har du allerede et sådant felt, så kan du jo bruge det!~)
Jeg har allerede et autonummerfelt med primærnøgle fra tabellen det Id no med tallene 51-52-51 osv. Det er det jeg brugt til at gruppere på. Det næste er jeg ikke rigtig med på, jeg er ikke nogen haj til sql
Det andet ID felt stammer fra tabellen som danner grundlag for forespørgslen i forespørgslen (altså opsummering af gangtid)håber at det forklarer lidt mere.
Synes godt om
Slettet bruger
05. juni 2008 - 23:29#5
IDno1 kan ikke være din primærnøgle, tallene går jo igen..
Synes godt om
Slettet bruger
05. juni 2008 - 23:37#6
Du må have eller bør have et felt i din tabel, som er forskelligt for hver post. Et unikt nummer, som derfor kan sættes til at være din primærnøgle det skal desuden være et stigende nummer, derfor brug autonr. Det er dette felt, som du skal sætte Maks på og gruppere IDno1!~)
Så du ender med 2 forespørgsler, en som kun indeholder dit unikke, stigende felt og dit IDno1 felt. Så tilføjer du denne forespørgsel i den forespørgsel du selv har lavet og trækker en relation mellem det unikke felt (som skal være i din forespørgsel) og det maks unikke felt, som er i den anden forespørgsel...
Synes godt om
Slettet bruger
05. juni 2008 - 23:43#7
ellers så hvis du har mulighed for det, så er du velkommen til at sende din db eller en udgave af din db til spg.eksperten@gmail.com
Grunden til at der er gentagelser er at hvergang jeg laver en indtastning i tabellen som danner grundlag for forespørgslen som giver løbende tid, og ´som skal opsummere feltet total tid, gentages posterne.
Synes godt om
Slettet bruger
06. juni 2008 - 09:59#9
Princippet på løsningen er den samme du har bare ikke en tabel, som jeg definerede den, du har en forespørgsel. Du skal altså lave en forespørgsel, som indeholder dine relationer og så kun 2 felter, nemlig et primær autonr fra den tabel, som indeholder din løbende tid og gruppere det på IDno1. Hvis du sætter autonr fra den løbende tid til maks, så vil du ende med en forespørgsel med alle de forskellige IDno1 numre og det tilhørende maks id fra din tabel med løbende tid.
Med denne forespørgsel i hånden kan du medtage den i din oprindelige forespørgsel, lave en relation mellem id nr fra løbende tid og din nye maks id, så vil det kun være den sidste post for hver IDno1, som kan fremkomme!~)
Jeg fik det til at virke, men så crashede office, og nu har jeg prøvet at rekonstruere, men kan altså ikke få det til at virke, jeg får fejlmeddelse om tvetydige ydre joins. Jeg håber at spg´s tilbud stadig gælder. jeg sender db nu.
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.