Таблица SQL Скрипка
CREATE TABLE Campaigns (
Campaign_ID VARCHAR(255),
Input_Date DATE,
Start_Date DATE,
Delivery_Date DATE,
Offered_Quantity VARCHAR(255),
Sold_Quantity VARCHAR(255)
);
INSERT INTO Campaigns
(Campaign_ID, Input_Date, Start_Date, Delivery_Date , Offered_Quantity, Sold_Quantity)
VALUES
("C001","2018-02-16", "2018-03-23","2018-01-25", "500", "300"),
("C002","2018-02-16", "2018-05-12","2018-05-25", "600", "700"),
("C003","2018-02-16", "2018-06-18","2018-06-30", "900", "400"),
("C004","2019-06-20", "2019-07-15","2019-08-02", "930", "800"),
("C005","2019-06-20", "2019-08-02","2017-04-14", "150", "120"),
("C006","2019-06-20", "2019-09-23","2020-10-08", "430", "400"),
("C007","2019-06-20", "2019-11-27","2019-11-26", "850", "900"),
("C008","2019-12-03", "2020-02-08","2020-05-23", "730", "650"),
("C009","2019-12-03", "2020-03-16","2020-02-14", "580", "930");
В приведенной выше таблице данных содержится campaigns
, в которой
a) Delivery_Date
предшествует Start_Date
или
b) Quantity_Sold
выше, чем Quantity_Offered
.
Чтобы идентифицировать эти campaigns
, я использую следующий запрос:
SELECT
Input_Date,
Start_Date,
Delivery_Date,
Offered_Quantity,
Sold_Quantity
FROM Campaigns
WHERE Delivery_Date < Start_Date
OR Sold_Quantity > Offered_Quantity
GROUP BY 1;
Теперь я хочу использовать WHERE-Conditions
в запросе как column names
для результатов и COUNT
Campaign_ID
, который заполняет один из обоих WHERE-Conditions
.
Результат должно выглядеть так:
Input Date Delivery_Date < Start_Date Quantity_Sold > Quantity_Offered
2018-02-16 1 1
2019-06-20 2 1
2019-12-03 1 1
Что мне нужно изменить в моем запросе, чтобы получить этот результат?