Avatar billede per2edb Ekspert
28. juni 2020 - 10:58 Der er 7 kommentarer og
1 løsning

Vis 1. record i SQL=SELECT...

Jeg har en SQL=SELECT...  der genererer flere record
Jeg har brug for at vis både alle record samt den 1. record alene

Selvfølgelig kan det laves ved 2 adskilte SQL=SELECT... men mine
SELECT er meget store og jeg har mange så en ville være at foretrække

Alle record vises ved:
RecordSource = SQL

Har i et forslag til at vise 1. record:
RecordSource.....  ???=SQL
eller forslag...
Avatar billede terry Ekspert
28. juni 2020 - 11:54 #1
hasnt this question been up before?

If the SQL by default retunrs all records, then to only show one of those records you use the Filter property. This is the same as the WHERE part of the SQL
Avatar billede per2edb Ekspert
28. juni 2020 - 13:03 #2
Hej og tak for svaret

Din løsning har jeg prøvet men kræver en del ekstra koder så jeg havde håbet på der fandes en smartere metod
Avatar billede terry Ekspert
28. juni 2020 - 13:27 #3
"Din løsning har jeg prøvet men kræver en del ekstra koder så jeg havde håbet på der fandes en smartere metod"

What is "Smartere"??
Somehow you have to tell access to show only one record instead of all of them.

And what ever method you choose is going to require some work one way or another. You cant expect Access to be able to read your mind and just show one of the records.

"Din løsning har jeg prøvet men kræver en del ekstra koder .."

I dont think setting the Filter property requires much code at all.

Me.Filter = "SomeField = 1234"
Me.FilterOn = True
Avatar billede fdata Forsker
28. juni 2020 - 19:35 #4
Alle poster:
SELECT DinTabel.*
FROM DinTabel
ORDER BY Et Felt;

Første post:
SELECT TOP 1 DinTabel.*
FROM DinTabel
ORDER BY Et Felt;
Avatar billede terry Ekspert
29. juni 2020 - 08:44 #5
#4
Thats going to give (possibly) only one record, but its always going to be the first, and I'd be very surprised if thats whats wanted.
Avatar billede fdata Forsker
29. juni 2020 - 11:04 #6
Maybe - and maybe not  ;O)

"Jeg har brug for at vis både alle record samt den 1. record alene".
Hvis posterne er sorteret korrekt, vil Top 1 vel give "den 1. record".
Avatar billede per2edb Ekspert
29. juni 2020 - 13:23 #7
Det blev en løsning med en kombination af:

Me.Filter
og
med TOP 1

TOP 1 var ny for mig. 1000 tak for hjælpen
Avatar billede terry Ekspert
29. juni 2020 - 16:28 #8
Hvis posterne er sorteret korrekt...

which still requires a change to teh SQL to sort after a specific record to get the first. So I may as well use WHERE....

But then its not me who wanted the solution, so ....

And I'll just mention again. TOP 1 does NOT necessarily return only one record
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