Avatar billede Superstes Novice
06. oktober 2011 - 11:21 Der er 1 løsning

Dynamisk dato-SQL i Microsoft Query

Hej.

Her nedenstående kommandotekst, til at hente data fra et .xlxs-ark (Excel 2007) til et andet vha. Microsoft Query.

SELECT `Sheet1$`.Mnd, `Sheet1$`.Kode, `Sheet1$`.Svar, `Sheet1$`.Ydernr
FROM `C:\Documents and Settings\klakd\Skrivebord\test.xlsx`.`Sheet1$` `Sheet1$`
WHERE (`Sheet1$`.Mnd>={ts '2010-10-01 00:00:00'}) AND (`Sheet1$`.Kode='qcrprat') AND (`Sheet1$`.Ydernr=34444.0)
ORDER BY `Sheet1$`.Mnd

Jer er kun interesseret i at få de data, hvor "Mnd" er 12 måneder gamle eller nyere. Dvs. alt hvad der er mere end et år gammelt, skal ikke importeres.
Er det muligt at gøre betingelsen (`Sheet1$`.Mnd>={ts '2010-10-01 00:00:00'}) dynamisk, a la´ (Sheet1$`.Mnd>={"nuværende måned og år minus 12 måneder}, så jeg ikke skal ind og ændre i SQL'en hver eneste gang?
Avatar billede Superstes Novice
06. oktober 2011 - 12:49 #1
Har fundet ud af det. :)

SELECT `Sheet1$`.Mnd, `Sheet1$`.Kode, `Sheet1$`.Svar, `Sheet1$`.Ydernr
FROM `C:\Documents and Settings\klakd\Skrivebord\test.xlsx`.`Sheet1$` `Sheet1$`
WHERE (`Sheet1$`.Kode='qcrprat') AND (`Sheet1$`.Ydernr=34444.0) AND (`Sheet1$`.Mnd>=?)
ORDER BY `Sheet1$`.Mnd

Og så kan man i forbindelsens egenskaber vælge an celleværdi som parameter. Så skal jeg bare sætte ønsket dato i den celle :)
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

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