Avatar billede dantona Nybegynder
25. januar 2000 - 22:58 Der er 11 kommentarer og
1 løsning

Min i sql

Hej jeg skal finde ud af hvilket tal i felterne r1 og r2 der mindst

jeg har forsøgt noget :
min([r1]+[r2])
men det ser ikke ud til at virke.
Avatar billede moses Praktikant
26. januar 2000 - 08:33 #1
SELECT DISTINCTROW r1,r2,IIf([r1]<[r2],[r1],[r2]) AS Mindst
FROM tabel1
Avatar billede ikuyucu Nybegynder
26. januar 2000 - 08:38 #2
min returnerer det mindste sæt af værdier, der er indeholdt i et angivet felt i en forespørgsel et eksempel:
Min(r1) giver det mindste tal i r1

Hvis du vil have det mindste tal mellem to felter, kan du direkte teste i en if sætning f.eks.

Sub mindste()
    If r1.Value < r2.Value Then
        MsgBox (r1.Value)
    Else
        MsgBox (rl2.Value)
    End If
End Sub

Held og lykke med det
Avatar billede dantona Nybegynder
27. januar 2000 - 20:31 #3
Hej
Jeg vil helst have det sådan jeg kan sætte det ind i mit query felt altså
Minimum: MIN(........)
Og gerne med en lille forklaring.
Avatar billede moses Praktikant
28. januar 2000 - 10:07 #4
Det er den samme kode:

Kolonne 1 = "r1"
Kolonne 2 = "r2"
Kolonne 3 = "Mindst: IIf([r1]<[r2],[r1],[r2])"
Avatar billede moses Praktikant
28. januar 2000 - 10:08 #5
Forklaring:
Hvis r1 er mindre end r2, så vis r1 ellers vis r2.

Avatar billede dantona Nybegynder
31. januar 2000 - 23:57 #6
Jamen hvad hvis der så er flere end bare 2
f.eks. r1,r2,r3,r4,r5
Avatar billede moses Praktikant
07. august 2000 - 09:56 #7
Hvis du ikke på forhånd ved, hvor mange variable du vil komme til at checke eller du kan risikere at skulle checke forskellige antal igenne tiden, så er det smarteste, at lave en tabel (TAB1) med et ID felt i, der henviser til en anden tabel (TAB2), hvor variablerne er lagt ind i - sammen med dette ID felt.
En query vil så kunne udtrække den eller de variabler, som hører til det valgte ID nummer.
Så skal du blot lave en almindelig domain aggregate funktion:

= DMIN(\"[varnavn]\",\"Tab2\")
Avatar billede dantona Nybegynder
07. august 2000 - 16:34 #8
Hejsa
Jeg tror du er ved at være inde på det rigtige
Kan du ikke lave en lille database, hvor du viser det, for det sprog du bruger er ikke helt forståligt for mig. Bare en lille tabel med nogle få data, så er svaret ok.

MVH
Dan
Avatar billede moses Praktikant
08. august 2000 - 08:12 #9
Hvis nu det er en persons vægt du registrerer hver dag, så skifter antallet ihverttilfælde.

Persontabel:
PersonID, Navn

Vægttabel (vægt svarer til r1, r2, osv.):
RegistreringID, PersonID, Vægt

HentMinimum Query:
SELECT Min(Vægttabel.Vægt) AS MinOfVægt FROM Persontabel INNER JOIN Vægttabel ON Persontabel.PersonID = Vægttabel.PersonID WHERE (((Persontabel.Navn)=\"Moses\"));
Avatar billede moses Praktikant
08. august 2000 - 08:29 #10
Nu kan du bare fylde i Vægttabellen, så meget du lyster.
Din query udtager altid den mindste vægt for den person, som du har angivet navnet for i SQL sætningen.
Det er et meget simpelt eksempel.
Avatar billede dantona Nybegynder
08. august 2000 - 10:31 #11
Gider du ikke lave databasen og sende den til dhj@net.dialog.dk så får du point, for det ser rigtigt ud, jeg kan bare ikke få det til at virke.

MVH
Dan
Avatar billede dantona Nybegynder
08. august 2000 - 11:09 #12
Mange takker
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester