08. januar 2003 - 13:37Der er
14 kommentarer og 1 løsning
4 næste datoer fra 9 forskellige felter
Jeg har en database, hvor der bl.a. er 9 forskellige datofelter (dato1-dato9). Jeg skal have valgt de 4, der kommer først efter dags dato, og basedesignet er desværre ikke noget jeg kan ændre :)
Hvad er smartest? Kan selvfølgelig lave en midlertidig tabel, og vælge derfra, men der er ikke en smartere måde?
Cool - superpraktisk. Dog er det største problem, at datoerne ligger i forskellige felter, og derfor enten må gennem et array eller en tmp tabel først. Men hvad er smartest?
Sorter dato-felterne i din sql-sætning så de står ældst til nyeste, og pløj dem igennem med en if-sætning der så udskriver de første 4 datoer der forekommer, som er nyere end dags dato.
Hvis jeg har misforstået det, og du vil ha' dem der er ældre end dags dato, så skulle samme metode nu kunne bruges alligevel. :-)
Men så skal jeg vel også have data fra felterne 1-9 smidt i en midlertidig tabel - problemet er som sagt, at datoerne er fordelt på 9 forskellige felter...
Hvorfor vil du smide dem i en midlertidig tabel? Du kan jo bare smide de 9 forskellige datoer i dit array, og rode rundt med dem der, for at spare databasekald...
Klart - men at oprette en midlertidig tabel til at ordne sagerne i virker for mig ret tåbeligt. Så hellere klare det ved at sortere vha. en SQL som vi begge har været inde på, og ordne de sidste småting i ASP'en.
Jeg har en masse felter, der knytter sig til en enkelt record. 9 af dise er datofelter, og jeg skal på en eller anden måde have fundet de 4 der ligger tættest på dags dato fremover.
okay - så kan du rigtigt nok ikke bruge sql-metoden. Du skal så ha' smidt dine datoer fra tabellen og ind i et array, som du derefter får sorteret, og til sidst finder datoerne på.
Endte faktisk med en tmp tabel grundet tidspres, men tak for hjælpen. Array-ideen lyder dog meget fiks, men hvor 'nemt' er det at sortere et array efter andet end alm. tal?
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.