Strona 1 z 1

Usunięcie kolumny z kwerendy i zastosowanie jej kryterii.

: śr mar 30, 2022 5:49 pm
autor: sticzi
Trochę niejasny tytuł, ale nie wiem jak to inaczej nazwać.
Chcę pogrupować sumę ilości wypożyczeń według miesięcy, znając datę każdego wypożyczenia, jednak kiedy grupuje kolumny grupują się one według pojedyńczych dni. Chciałbym usunąć kolumnę z datami, jednak wtedy kolumna z miesiącami się "rozsypuje" bo jest ona stworzona na podstawie kolumny z datami. Da się to w miarę łatwo rozwiązać przy pomocy interfejsu graficznego?
Obrazek

Re: Usunięcie kolumny z kwerendy i zastosowanie jej kryterii

: śr mar 30, 2022 6:54 pm
autor: Rafkus
:bravo: GRATULUJĘ, właśnie odkryłeś że interfejs graficzny ma pewne wady :cry:

Twoja kwerenda wymagałaby tylko dwóch poprawek w kolumnie Data_wyp należałoby:
  1. odhaczyć kwadracik w wierszu Widoczny
  2. usunąć funkcje Grupuj
I to powinno wystarczyć - gdyby nie ułomność programu. Wydaje mi się że Interfejs ma problemy z przetworzeniem słowa POMIĘDZY.
Na szczęście można to zrobić nieco inaczej:
  • dwie pierwsze kolumny zostaw tak jak masz
  • kolumna 3: POLE: Data_wyp; WIDOCZNY: nie; FUNKCJA: brak; KRYTERIUM: > #1.01.2011#
  • kolumna 4: POLE: Data_wyp; WIDOCZNY: nie; FUNKCJA: brak; KRYTERIUM: < #31.12.2011#
Kryterium w kolumnie 3 i 4 powinno być zapisane obok siebie(w jednym wierszu) oznacza to że oba warunki muszą być spełnione jednocześnie (operator AND). W ten sposób powiesz że interesują Cię daty tylko z określonego przedziału.

PS. Jako ciekawostkę powiem, że to co próbowałeś osiągnąć zadziałało by bez problemu w kwerendzie SQL:

Kod: Zaznacz cały

SELECT COUNT( "ID_wyp" ),  MONTH( "Data_wyp" ) 
FROM "Wypozyczenia" 
WHERE "Data_wyp" BETWEEN '2022-01-01' AND '2022-02-29' 
GROUP BY MONTH( "data_wyp" )

Re: Usunięcie kolumny z kwerendy i zastosowanie jej kryterii

: śr mar 30, 2022 7:21 pm
autor: sticzi
Rafkus pisze: :bravo: GRATULUJĘ, właśnie odkryłeś że interfejs graficzny ma pewne wady :cry:
Niestety zostawiłem sobie bazy danych na sam koniec nauki i wydaję mi się, że nie za bardzo mam czas na nauczenie się formułek SQL'a

Re: Usunięcie kolumny z kwerendy i zastosowanie jej kryterii

: śr mar 30, 2022 9:25 pm
autor: Jan_J
// bez większego znaczenia w tym kontekście
Jak się przejrzy różne interfejsy graficzne do baz danych, to widać że projektanci cuda wyczyniają, by zapewnić egonomiczne konstruowanie zapytań bez dotykania języka. Szczególnie zaimponowały mi DbWrench, DBVisualizer Pro i kiedyś Filemaker. Base jest przy nich bledziutki, Access również.
SQL jest „wspólnym mianownikiem” większości baz relacyjnych i pozwala na swobodne – w miarę, bo składnia trochę się zmienia od systemu do systemu, a bibliteka funkcji jeszcze bardziej – operowanie danymi bez ograniczeń interfejsu.

Re: Usunięcie kolumny z kwerendy i zastosowanie jej kryterii

: śr mar 30, 2022 9:36 pm
autor: Jan_J
Warunek selektora

Kod: Zaznacz cały

"Data_wyp" BETWEEN '2022-01-01' AND '2022-02-29' 
jest równoważny warunkowi

Kod: Zaznacz cały

"Data_wyp" >= '2022-01-01' AND "Data_wyp" <= '2022-02-29' 
który może okazać się bardziej podatny na realizację przez GUI Base'a.

Re: Usunięcie kolumny z kwerendy i zastosowanie jej kryterii

: czw mar 31, 2022 12:43 am
autor: sticzi
Rafkus pisze: Twoja kwerenda wymagałaby tylko dwóch poprawek w kolumnie Data_wyp należałoby:
  1. odhaczyć kwadracik w wierszu Widoczny
  2. usunąć funkcje Grupuj
I to powinno wystarczyć
Co w takim razie tutaj jest źle zrobione, bo wyświetlają się wszystkie marki, a nie tylko te które nie zawierają składnika "paczula"
Obrazek

Re: Usunięcie kolumny z kwerendy i zastosowanie jej kryterii

: czw mar 31, 2022 1:42 am
autor: Rafkus
Wydaje mi się, że pytanie masz skonstruowane poprawnie.
Usuń z kwerendy funkcje grupowania oraz kryterium, uwidocznij kolumnę nazwa_składnika, posortuj kolumnę nazwa_m i zobacz czy masz tam np. takie dane:

Kod: Zaznacz cały

Nazwa_M	Składnik
Tci		paczula, róża
Tci		wanilia, konwalia 
W tym przypadku po wykluczeniu pojedynczego rekordu zawierającego paczulę, marka Tci i tak będzie figurować dalej...

Jeżeli chcesz wiedzieć które marki nie stosują paczulę to najpierw musisz zrobić listę marek zawierającą paczule, a następnie z listy wszystkich marek wykluczyć te, które zawierającą paczule. A to jest to o co pytałeś się nieco wcześniej a mianowicie "Niepasujące dane"

I jeszcze jedna mała sugestia. W tym przypadku nie musisz stosować funkcji grupowania. Zamiast niej na pasku narzędziowym włącz opcję Jednoznaczne wartości (kliknij ikonkę jakby Lejka z cyframi 123). W ten sposób otrzymasz unikalne (niepowtarzalne) rekordy.

Re: Usunięcie kolumny z kwerendy i zastosowanie jej kryterii

: czw mar 31, 2022 7:57 pm
autor: sticzi
Dobra dzięki, trochę to wszystko zagmatwane, ale zaczynam rozumieć.