Moin.
Auch wenn die obigen Antworten korrekt sind, möchte ich auch noch eine Lösung hinzufügen.
Ich glaube, er möchte alle Monate mit den dazugehörigen Werten zurück erhalten.
Speziell geht es es ihm wohl darum, dass er den Zeitraum der Monate festgelegt hat (wieso auch immer) und diese dementsprechend für Bestellungen begrenzen kann.
Sollte er dafür einen Anwendungsfall haben, dann sollte er den JOIN in Erwägung ziehen - möglicherweise passt er ja start und end bei den Monaten auch mal an.
Gehen wir davon aus, dass dein Schema folgendermaßen aufgebaut und gefüllt ist (Spaltennamen usw. musst du dann natürlich auf dein Schema anpassen):
CREATE TABLE months (
    month int PRIMARY KEY,
    name varchar(15),
    start date,
    end date
);
INSERT INTO months (`month`, `name`, `start`, `end`) VALUES
(1, 'Januar', '2022-01-01', '2022-01-31'),
(2, 'Februar', '2022-02-01', '2022-02-28'),
(3, 'März', '2022-03-01', '2022-03-31'),
(4, 'April', '2022-04-01', '2022-04-30'),
(5, 'Mai', '2022-05-01', '2022-05-31'),
(6, 'Juni', '2022-06-01', '2022-06-30'),
(7, 'Juli', '2022-07-01', '2022-07-30'),
(8, 'August', '2022-08-01', '2022-08-31'),
(9, 'September', '2022-09-01', '2022-09-30'),
(10, 'Oktober', '2022-10-01', '2022-10-31'),
(11, 'November', '2022-11-01', '2022-11-30'),
(12, 'Dezember', '2022-12-01', '2022-12-31');
CREATE TABLE orders (
    id int PRIMARY KEY AUTO_INCREMENT,
    customer varchar(15),
    time date
);
INSERT INTO orders (`customer`, `time`) VALUES
('Peter', '2022-01-02'),
('Peter', '2022-01-08'),
('Steven', '2022-01-28'),
('Mari', '2022-02-05'),
('Tobi', '2022-02-19'),
('Luke', '2022-03-02'),
('Luke', '2022-03-08'),
('Mathis', '2022-04-06'),
('Peter', '2022-06-03'),
('Peter', '2022-06-04'),
('Alex', '2022-07-02'),
('Karl', '2022-07-08'),
('Hanna', '2022-08-01'),
('Bush', '2022-09-11'),
('Did', '2022-09-11'),
('It', '2022-09-11'),
('Kira', '2022-10-02'),
('Maria', '2022-10-22'),
('Josef', '2022-10-30'),
('Luke', '2022-11-11'),
('Jesus', '2022-12-24'),
('Santa', '2022-12-25'),
('Santa', '2022-12-26');Um nun von einem Monat die Anzahl der Bestellungen zu erhalten kannst du folgenden Befehl ausführen:
SELECT name, COUNT(*) as 'Count' FROM months LEFT JOIN orders ON orders.time BETWEEN months.start AND months.end WHERE name = 'Januar';Um nun alle Monate mit der Anzahl der zugehörigen Bestellungen zu erhalten:
SELECT name, COUNT(*) as 'Count' FROM months LEFT JOIN orders ON orders.time BETWEEN months.start AND months.end GROUP BY months.month;URL zum FIddle: SQL Fiddle und SQL Fiddle
 
		 
		
		
	

 wah?
 wah?

