SELECT p.product_name, c.color_name FROM products p CROSSJOIN colors c;
這個查詢會返回每個產品與每種顏色的所有可能組合。
2. 創建產品的所有尺寸和顏色組合
SELECT p.product_name, c.color_name, s.size_name FROM products p CROSSJOIN colors c CROSSJOINsizes s;
這個查詢生成了每個產品的所有可能的顏色和尺寸組合。
3. 計算所有產品變體的價格(假設顏色和尺寸會影響價格)
SELECT p.product_name, c.color_name, s.size_name, ROUND(p.base_price * (CASE WHEN c.color_name = 'Red'THEN1.1 ELSE1 END) * (CASE WHEN s.size_name = 'Large'THEN1.2 WHEN s.size_name = 'Medium'THEN1.1 ELSE1 END), 2) AS variant_price FROM products p CROSSJOIN colors c CROSSJOINsizes s;
這個查詢生成了所有產品變體的價格,考慮了顏色和尺寸對價格的影響。
4. 生成日期范圍
WITH RECURSIVE dates(date) AS ( SELECTdate('2023-01-01') UNION ALL SELECTdate(date, '+1 day') FROM dates WHEREdate < date('2023-12-31') ) SELECT p.product_name, d.date FROM products p CROSSJOIN dates d;
這個查詢使用遞歸 CTE 生成日期范圍,然后與產品進行交叉連接,可用于創建銷售報告模板。
5. 創建所有可能的產品對比組合
SELECT p1.product_name AS product1, p2.product_name AS product2 FROM products p1 CROSSJOIN products p2 WHERE p1.product_id < p2.product_id;