Thread View: pl.comp.bazy-danych.msaccess
4 messages
4 total messages
Started by 7704predator
Wed, 04 May 2016 17:38
Zwracanie dat bez sprzedaży (ms access 2013, sql)
Author: 7704predator
Date: Wed, 04 May 2016 17:38
Date: Wed, 04 May 2016 17:38
45 lines
2282 bytes
2282 bytes
Witam! Mam tabelę tbDATES zawierającą wszystkie daty od 1/1/2013 do 4/30/2016, oraz tabelę tb_art_agreg zawierającą dzienną sprzedaż dla artykułów w okresie od 1/1/2013 do 4/30/2016. Jeżeli w danym dniu sprzedaż dla danego artykułu nie wystąpiła brak jest rekordu. tbDATES ------- datum (pk) Date/Time tb_art_agreg ----------- date_from (pk) Date/Time article_id (pk) Long Integer qty_sold Double Dla artykułu 1034272 w okresie 1/1/2016 - 1/5/2016 sprzedaż wystąpiła tylko w dniu 1/4/2016. Mam kwerendę, która ma postać: SELECT d.datum, s.date_from, s.qty_sold FROM tbDATES AS d LEFT JOIN tb_art_agreg AS s ON d.datum = s.date_from WHERE (s.article_id is null or s.article_id = 1034272) and (d.datum between #1/1/2016# and #1/5/2016#); i zwraca taki wynik: datum date_from qty_sold 2016-01-01 2016-01-04 2016-01-04 -0,53 Co zrobić żeby zwracała: datum date_from qty_sold 2016-01-01 2016-01-02 2016-01-03 2016-01-04 2016-01-04 -0,53 2016-01-05 Nie rozumiem też tej niekonsekwencji w zwróceniu rekordu dla daty 2016-01-01. Z góry dzięki za pomoc. K.
Re: Zwracanie dat bez sprzedaży (ms access 2013, sql)
Author: MaciejF
Date: Wed, 04 May 2016 20:00
Date: Wed, 04 May 2016 20:00
8 lines
1554 bytes
1554 bytes
Może ten null nie jest potrzebny czyli tak: SELECT d.datum, s.date_from, s.qty_sold FROM tbDATES AS d LEFT JOIN tb_art_agreg AS s ON d.datum = s.date_from WHERE ((s.article_id = 1034272) and (d.datum between #1/1/2016# and #1/5/2016#)); Pozdrawiam MF
Re: Zwracanie dat bez sprzedaży (ms access 2013, sql)
Author: MaciejF
Date: Wed, 04 May 2016 20:09
Date: Wed, 04 May 2016 20:09
4 lines
1522 bytes
1522 bytes
Nie wiem czy poniższe coś zmienia Ale spróbuj. WHERE (((s.article_id) = 1034272) OR ((s.article_id) Is Null)) and ((d.datum) between #1/1/2016# and #1/5/2016#));
Re: Zwracanie dat bez sprzedaży (ms access 2013, sql)
Author: MaciejF
Date: Wed, 04 May 2016 20:19
Date: Wed, 04 May 2016 20:19
1 lines
1574 bytes
1574 bytes
WHERE (((s.article_id) = 1034272) OR ((s.article_id) Is Null) AND ((d.datum) between #1/1/2016# and #1/5/2016#))
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads