06. marts 2002 - 21:59Der er
17 kommentarer og 5 løsninger
Udtrække de husID´er som ikke er udlejet i en defineret periode
Jeg er ved at få grå hår af mit problem. Jeg har en tabel med følgende felter: husID startdato slutdato 1 05-03-2002 10-03-2002 1 04-05-2002 18-05-2002 2 06-07-2002 20-07-2002 osv. osv.
På min asp-side vælges startdato og slutdato for hvornår man ønsker ferie. Når der trykkes OK skal der kun vælges de husID´er som ikke er udlejet i de valgte periode.
AI bliver først for alvor en del af arbejdet, når teknologien integreres i den måde, vi arbejder på. At have adgang til AI betyder ikke nødvendigvis, at medarbejderne er klar til at bruge den.
sblar> Hvordan kan jeg få SQL-sætningen til kun at tage en og samme husID een gang istedet for at den trækker alle ens husID´er som matcher SQL-sætningen???
SELECT DISTINCT .... Forøvrigt tror jeg at a1's forslag vil udtrække de huse som netop er udlejet i den ønskede periode. Ikke lige det du ville, vel? Som a1 skriver skal dine variabler (indtastet af brugeren) selvfølgelig omsluttes af ('').
jeg har faktisk oprettet spørgsmålet i ASP kategorien, men der har simpelthen ikke været nogen der kunne give et svar på mit spørgsmål. Håber det er ok...jeg skal lige teste hele dit svar sblar.
Du skal finde de HusID, som ikke findes blandt de HusID hvor (en startdato ikke er i intervallet) eller (en slutdato ikke er i intervallet) eller ((startdato er før intervallet) og (slutdato er efter intervallet))
select HusID from dintable where husid not in (select distinct husid from dintable where (feriestart between startdato and slutdato) or (ferieslut between startdato and slutdato) or ( (feriestart < startdato) and (ferieslut > slutdato) )
benny.tordrup> Tak for dit svar...prøver lige den af. Et andet problem er at jeg har problemer med datoerne. Jeg kører formatet dd-mm-yyy. Bruger dansk opsætning i location. Når udlejer indtaster udlejning for sit hus bliver start og slutdato gemt i databasen som dd-mm-yyyy. Når jeg så skal lave min SQl-sætning for at trække de husId´er ud som ikke er udlejet i en given periode så vender den om på dd og mm når dag er =<12. Hvad skal jeg gøre for at afhjælpe dette problem? Det webhotel som det skal ligge på bruger dansk dd-mm-yyyy. Håber der er en der har en løsning.
Jeg ved godt, at det er et lidt større arbejde i sql-dannelsen, men du kan bruge funktionen DateSerial(Year, Month, Day) i forbindelse med datosammenligninger i Access.
Nu har jeg endelig fundet en løsning til mit problem. Jeg er gået væk fra SQL-sætningen og i stedet finder de ikke-udlejede-husID´er i IF-sætninger. Måske ikke den helt perfekte løsning, idet den måske kører lidt langsommere end i en SQL-sætning...nu må vi se, men det vigtigste er at jeg har fundet en 100% køreklar løsning. Jeg vil dog alligevel dele point ud for der er kommet mange brugbare svar som jeg kan drage nytte af senere hen. Tusind tak jeres hjælp.
The STANDARD method for an SQL Select IS MM-DD-YYYY. This has NOTHING to do with regional settings or anything! I agree that YYYY-MM-DD will always work.
The SQL SELECT will return the infromationa nd then it is up to the application to display the date in the correct format. The date is stored in the database in the same format not matter which country you are in
Standard ANSI/ISO SQL-92 has a full specification for dates and times that are based on ISO-8601 standards and should have no Year 2000 problems. This standard requires the "yyyy-mm-dd" format and 24-hour time formats based on the UTC (Universal Coordinated Time, formerly the GMT or Greenwich Mean Time) and has a lot of details in it.
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.