Usunięcie kolumny z kwerendy i zastosowanie jej kryterii.

Użytkowanie programu bazodanowego
sticzi
Posty: 12
Rejestracja: pt mar 25, 2022 8:21 pm

Usunięcie kolumny z kwerendy i zastosowanie jej kryterii.

Post 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
Ostatnio zmieniony czw mar 31, 2022 7:57 pm przez sticzi, łącznie zmieniany 3 razy.
OpenOffice 4 na Windsows 10
Awatar użytkownika
Rafkus
Posty: 513
Rejestracja: czw kwie 12, 2018 10:26 pm

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

Post 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" )
LibreOffice 7.4.6 (preferowany) oraz OpenOffice 4.1.6. Widows 10
OpenOffice 4.1.3. oraz Libre 4.2.5.2 Windows XP
sticzi
Posty: 12
Rejestracja: pt mar 25, 2022 8:21 pm

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

Post 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
OpenOffice 4 na Windsows 10
Jan_J
Posty: 4558
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

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

Post 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.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Jan_J
Posty: 4558
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

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

Post 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.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
sticzi
Posty: 12
Rejestracja: pt mar 25, 2022 8:21 pm

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

Post 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
OpenOffice 4 na Windsows 10
Awatar użytkownika
Rafkus
Posty: 513
Rejestracja: czw kwie 12, 2018 10:26 pm

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

Post 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.
LibreOffice 7.4.6 (preferowany) oraz OpenOffice 4.1.6. Widows 10
OpenOffice 4.1.3. oraz Libre 4.2.5.2 Windows XP
sticzi
Posty: 12
Rejestracja: pt mar 25, 2022 8:21 pm

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

Post autor: sticzi »

Dobra dzięki, trochę to wszystko zagmatwane, ale zaczynam rozumieć.
OpenOffice 4 na Windsows 10
ODPOWIEDZ