を含めて、私は次のことを達成しようとしています:MySQLのグループ第二週値
私はこのようなデータを持つテーブルがある:ここでは
INSERT INTO `control_leads` (`LeadID`, `Type`, `Business`, `Date`, `Multiplier`, `UserID`)
VALUES
(1026, 'Bags', 'AB', '2017-01-18', 1, 11),
(1030, 'Ice Scraper', 'AB', '2017-01-18', 1, 8),
(1029, 'Drawstring ', 'AB', '2017-01-18', 1, 8),
(1028, 'Umbrellas', 'AB', '2017-01-18', 1, 11),
(1027, 'Lanyards', 'LP', '2017-01-18', 2, 11),
(1025, 'Bags', 'AB', '2017-01-18', 2, 8),
(1031, 'Lanyards', 'LP', '2017-01-18', 2, 8),
(1018, 'Lanyards', 'LP', '2017-01-17', 1, 8),
(1017, 'Bags', 'AB', '2017-01-17', 1, 8),
(1023, 'Hand Warmer', 'AB', '2017-01-17', 1, 8),
(1020, 'Lanyards', 'LP', '2017-01-17', 2, 11),
(1021, 'Pens', 'AB', '2017-01-17', 1, 11),
(1022, 'Bags', 'AB', '2017-01-17', 1, 8),
(1024, 'Headphones', 'AB', '2017-01-17', 1, 11),
(1007, 'Balls', 'AB', '2017-01-16', 1, 8),
(1008, 'Lanyards', 'LP', '2017-01-16', 2, 8),
(1009, 'Mugs', 'AB', '2017-01-16', 1, 11),
(1010, 'Bags', 'AB', '2017-01-16', 1, 8),
(1011, 'Bags', 'AB', '2017-01-16', 1, 11),
(1013, 'Phone/Table', 'AB', '2017-01-16', 1, 8),
(1015, 'Pens', 'AB', '2017-01-16', 1, 11),
(1016, 'Selfie Stic', 'AB', '2017-01-16', 1, 8);
は私のSQLクエリです:
SELECT IFNULL(SUM(Multiplier), 0) AS val, control_leads.Date AS date
FROM control_leads
WHERE Date > '2017-01-04'
GROUP BY control_leads.Date
ORDER BY date ASC
結果で:
10 2017-01-05
6 2017-01-06
8 2017-01-09
14 2017-01-10
9 2017-01-11
14 2017-01-12
10 2017-01-13
10 2017-01-16
8 2017-01-17
10 2017-01-18
しかし、私はこの数週間の値を取得しようとしているだけでなく、このように、先週の比較
含まれています:私は、グループに私がしたい、非常によく説明していませんでした
:
val1 week1 val2 week2
10 2017-01-05 14 2017-01-12
6 2017-01-06 10 2017-01-1
8 2017-01-09 10 2017-01-16
14 2017-01-10 8 2017-01-17
9 2017-01-11 10 2017-01-18
はEDITをその日のlastweekの値と比較してください。
val1 week1 val2 week2
day1 10 2017-01-05 14 2017-01-12
day2 6 2017-01-06 10 2017-01-1
day3 8 2017-01-09 10 2017-01-16
day4 14 2017-01-10 8 2017-01-17
day5 9 2017-01-11 10 2017-01-18
で、先週と比較のために働く必要があります。 http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very-simple-sql-queryを参照してください。 – Strawberry
あなたが挿入したデータ行は2017年に1つしかありませんが、 'WHERE Date> '2017-01-04''で説明した結果はどうやって得られますか? –
@CharlesBretana例として使用しました。実際のテーブルは大規模です。 – jrobilliard