08. august 2000 - 16:46Der er
9 kommentarer og 1 løsning
Random Selection and MAX 4 records
Jeg er ved at lave en bannerdatabase (Access 2000) [dybe tallerkner opfindes mere end én gang :o)] Jeg selekterer poster fra en maintable og vil gerne selektere med en tilfældighedsværdi, således at bannerne bare sprøjter ud... Ellers skal jeg sætte en tidsvariabel på,, hvilket også er smart, men meget tidskrævende at vedligeholde. Desuden kunne det være RIGTIG smart, hvis der max. bliver valgt f.eks. 4 records. af gangen. Med en randomfunction vil det være nemmere at vedligeholde databasen med bannere.
Håber på et godt samt konstruktivt svar på dette spørgsmål
Med version 7 af TeamShare tager Lector næste skridt og bygger en platform for AI-agenter, der i højere grad kan følge medarbejderen gennem hele arbejdsprocessen.
BannerID: AutoNumber TestTekst: Text VisFraTid: Date/Time \"Format Long Time\" VisTilTid: Date/Time \"Format Long Time\"
Derefter laver du en Query med følgende SQL sætning:
SELECT TOP 4 [Banner Table].TestTekst FROM [Banner Table] WHERE ((([Banner Table].VisfraTid)<=Format(Now(),\"hh:nn:ss\")) AND (([Banner Table].ViTilTid)>=Format(Now(),\"hh:nn:ss\"))) ORDER BY Rnd([BannerID]);
Så kommer der 4 tilfældigt valgte bannere hver gang du kører denne query. Det er desuden kun de bannere, der må vises på det tidspunkt querien bliver kørt, der vælges ud fra (Må vises Fra - Til).
Jo tak ,- det vil jeg da gerne ! men det ser ud til at virke.... men når jeg spørger med en asp-side ned i databasen med forespørgslen så virker det ikke som når den bliver kørt direkte i Access.. Okay dataenen kommer, men ikke specielt random. Randomfunktionen virker fint i Access... Any clues ?? mvh martens
Jeg ved ikke lige, hvorfor det ikke virker fra SAP. Prøv at se efter, om Random funktionen virkelig også giver forskellige resultater for hver record. Hvis den ikke gør det, så kunne løsningen være, at undlade RANDOM funktionen i Querien, så den tog alle tidsmæssigt tilladte records med. Random funktionen kan du så bare implementere i ASP med en for-next løkke, der kører 4 gange.
SAP er godtnok ved at være lige så kendt som ASP,- Men tysk grundighed betaler sig ;o) Har du forresten checket det selv ? Altså hvorfor en ASP side genereret af FP2000 med en streng til en forespørgsel ikke virker, når forespørgslen virker direkte i DB´en ?
Jeg har ikke mulighed for ASP, men jeg gætter på, at det er fordi [BannerID] og random funktionen ikke vises i din query. På den måde får du ikke tvunget en ny udregning af formlen med random funktionen.
Prøv evt.:
SELECT TOP 4 [Banner Table].BannerID, [Banner Table].TestTekst, Rnd([BannerID]) FROM [Banner Table] WHERE ((([Banner Table].VisfraTid)<=Format(Now(),\"hh:nn:ss\")) AND (([Banner Table].ViTilTid)>=Format(Now(),\"hh:nn:ss\"))) ORDER BY Rnd([BannerID]);
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.