SQL - podzapytanie

0

używam xampp - MariaDB i próbuję uzyskać dwa zapytania abym miał listę rekordów oraz zliczenie ile ich jest. Póki co to mam dwa zapytania które spełniają swoją rolę ale nie wiem jak to połączyć:
Zapytanie 1.

SELECT * FROM `tZamowienia2` WHERE `pData_zwrotu_akt_na_wydzial` BETWEEN '2019-09-07' AND '2019-09-30' 

screenshot-20200322121321.png

Zapytanie 2.

SELECT COUNT(`pData_zwrotu_akt_na_wydzial`) AS `ILE ZWRÓCONO W MIESIĄCU` FROM `tZamowienia2` WHERE `pData_zwrotu_akt_na_wydzial` BETWEEN '2019-09-07' AND '2019-09-30'

screenshot-20200322121149.png

Oba zapytania działają. Czy ktoś pomoże ?

0
zkubinski napisał(a):

... ale nie wiem jak to połączyć:

Podaj, jak ma wyglądać wynik. Wtedy będzie łatwiej.
Lub podaj, gdzie chcesz tego zapytania użyć. Bo może się okazać, że nie potrzebujesz drugiego zapytania.

0

Podaj, jak ma wyglądać wynik. Wtedy będzie łatwiej.

nie wiem czy to będzie możliwe ale chciałbym uzyskać coś w rodzaju

screenshot-20200322132849.png

i dodatkowo w wierszu poniżej podsumowanie ile rekordów znalazł

Lub podaj, gdzie chcesz tego zapytania użyć. Bo może się okazać, że nie potrzebujesz drugiego zapytania.

to mi jest potrzebne do programu który piszę w Qt. W tabeli ma pokazać ilość rekordów, a potem ma wyskoczyć okienko z komunikatem, że znalazł XX rekordów

0
  1. Można użyć funkcji analitycznej:
select 
   sum(case when warunek then 1 else 0) over ()  cnt,
   t.*
from tabelka t where inny_warunek;
  1. Można użyć faktoryzacji i zrobić kartezjan między rezultatem zliczania i tym co wybierasz:
WITH
 COUNTER AS (select count(0) ....) ,
 QUERY AS (select costam ....)
SELECT c.*,q.* from counter c, query q;
0

mnie udało się wykombinować takie ale kompletnie nie rozumiem podzapytań

SELECT `pData_zwrotu_akt_na_wydzial`, COUNT(*) FROM ( SELECT `pData_zwrotu_akt_na_wydzial` FROM `tZamowienia2` WHERE `pData_zwrotu_akt_na_wydzial` BETWEEN '2019-09-07' AND '2019-09-30') a GROUP BY `pData_zwrotu_akt_na_wydzial` UNION ALL SELECT 'suma' `pData_zwrotu_akt_na_wydzial`, COUNT(*) FROM `tZamowienia2`

wynik

screenshot-20200322151135.png

wynik w podsumowaniu powinien być 3, a zliczył wszystkie rekordy jakie są w tabeli

0
SELECT `pData_zwrotu_akt_na_wydzial`, COUNT(*) FROM ( SELECT `pData_zwrotu_akt_na_wydzial` FROM `tZamowienia2` WHERE `pData_zwrotu_akt_na_wydzial` BETWEEN '2019-09-07' AND '2019-09-30') a GROUP BY `pData_zwrotu_akt_na_wydzial` UNION ALL SELECT 'suma' WHERE `pData_zwrotu_akt_na_wydzial` COUNT(*) FROM `tZamowienia2`

i SQL wypluwa mi błąd, chyba, że coś źle robię ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1