hei
Millainen hakuehto pitää laittaa,että saan haettua päivämäärän mukaan esim kaikki 8kk vanhemmat päivämäärät.
Kuka tietää, vai tietääkö kukaan?
Millainen hakuehto pitää laittaa,että saan haettua päivämäärän mukaan esim kaikki 8kk vanhemmat päivämäärät.
Kuka tietää, vai tietääkö kukaan?
Vastaukset 7
Vanhimmat
Kysymyksesä on Access 2002.
Täällähän on kovin kehuttu Accessin olevan tietokantaohjelma joten se varmaan ymmärtää SQL:ää.
seuraava lause toimii SQL-serverillä:
SELECT mun_kentat FROM mun_taulu WHERE pvm>DateAdd(mm.-8,getdate())
Tuli luettua vähän hätäisesti tuo kysymyksesi. Tuo lause hakee 8kk tuoreemmat ja sinä halusit 8kk vanhemmat joten ehto pitää olla:
...WHERE pvm
Moikka
Access ei tunne getDate() ollenkaan,ainakaan mun :-).
Accessin ohje:
DateAdd("v", -10, [Sovittu päivämäärä])
ei toimi toikaan
en saa toimiin myöskään DateDiff:ä,yrtin jo silläkin ratkoa ongelmaa.
tää palauttaa kaikki tieutueet
where DateAdd("m",-8,[ostot.pvm]);
ja tässä on taas toimintosarja kutsussa virhe
where DateAdd("mm", 8,[ostot.pvm]);
Muistan vain kymmenenvuoden takaa,että access on tosi tarkka suluista,pisteistä jne.
Voiski tehdä SQL-serverillä,mutta kun ei voi :-(,jollakin sitä koitettava leiänsä tienata
Lukases http://sqlserver2000.databases.aspfaq.com/what-are-the-main-differences-between-access-and-sql-server.html
Siellä mainitaan että getDate = Now
http://www.techonthenet.com/access/functions/date/dateadd.php
Joten SELECT DateAdd ('m', -8, Now()) voisi toimia. Tuollee kannattaa kattoo mitä tuo palauttaa, sit tuosta on helppo muodostaa WHERE lause
SELECT * FROM taulusi WHERE pvm < DateAdd ('m', -8, Now())
Accesia en tunne, mut noin luulisi sen olevan.
"where DateAdd("m",-8,[ostot.pvm]);
ja tässä on taas toimintosarja kutsussa virhe"
Tuo vähentää ostot taulun pvm tietueesta 8kk, ja et vertaa tuota mihinkään jolloin kyseessä virhe WHERE ehdossa.
SELECT kohdassa tuo toimii, mikäli haluat vähentää 8kk tuosta.
SAin sen toimimaan. KIitos vielä kerran :-)