在MySQL 中為用戶群增長圖建立連續日期範圍
在MySQL 中建立連續日期範圍,即使是沒有記錄的日子,您可以利用以下技術:
<br>SELECT DATE_ADD('2003-01-01 00:00:00.000', INTERVAL n5.num<em>10000 n4.num</em>1000 n3.num<em>100 n2.num</em>100 n3.num<br>100 n2.num<br>1011.日期<br>來自<br>(選擇0 AS num UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) n1,<br>選擇1 聯合全部選擇 2聯合全部選擇3 聯合全部選擇4 聯合全部選擇5 聯合全部選擇6 聯合全部選擇7 聯合全部選擇8 聯合全部選擇9) n2,<br>(SELECT 0 AS num 聯合全部選擇1 聯合全部選擇2 聯合全部選擇3 聯合全部選擇4聯合所有選擇5 聯合所有選擇6 聯合所有選擇7 UNION ALL SELECT 8 UNION ALL SELECT 9) n3,<br>(SELECT 0 AS num UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION nALL 48 4 ,<br>(SELECT 0 AS num UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) n5<br> 日期日期00:00:00.000' AND 日期 ORDER BY date<p></p>
查詢透過組合 n1 到 n5 欄位(每列代表單一數字)來產生日期的順序範圍。總範圍由每列的最大值決定(例如,如果 n3 的最大值為 3,則範圍跨越 399 天)。
要限制日期範圍,只需將WHERE 子句替換為所需的日期間隔,例如:
WHERE date >= MIN(your_table_date_field) AND 日期
以上是如何在 MySQL 中產生連續的日期範圍以進行資料視覺化?的詳細內容。更多資訊請關注PHP中文網其他相關文章!