11SELECT
22 inventory_snapshot_sk,
3- snapshot_date,
4- product_id,
5- product_name,
6- sku,
7- category
3+
4+ CASE
5+ WHEN snapshot_date LIKE ' [A-Z][a-z][a-z][a-z] __, ____' THEN TRY_CONVERT(DATE ,snapshot_date)
6+ WHEN snapshot_date LIKE ' [A-Z][a-z][a-z] __, ____' THEN TRY_CONVERT(DATE ,snapshot_date)
7+ WHEN snapshot_date LIKE ' ____/__/__' THEN TRY_CONVERT(DATE ,snapshot_date)
8+ WHEN snapshot_date LIKE ' ____-__-__' THEN TRY_CONVERT(DATE ,snapshot_date)
9+
10+ WHEN snapshot_date LIKE ' __/__/____' AND SUBSTRING (snapshot_date, 4 , 2 ) > 12 THEN TRY_CONVERT(DATE , snapshot_date, 101 )
11+ WHEN snapshot_date LIKE ' __/__/____' AND LEFT(snapshot_date, 2 ) > 12 THEN TRY_CONVERT(DATE , snapshot_date, 103 )
12+ WHEN snapshot_date LIKE ' __-__-____' AND SUBSTRING (snapshot_date, 4 , 2 ) > 12 THEN TRY_CONVERT(DATE , snapshot_date, 110 )
13+ WHEN snapshot_date LIKE ' __-__-____' AND LEFT(snapshot_date, 2 ) > 12 THEN TRY_CONVERT(DATE , snapshot_date, 105 )
14+ ELSE TRY_CONVERT(DATE , snapshot_date)
15+ END as snapshot_date,
16+
17+ CASE
18+ WHEN TRY_CONVERT(INT , product_id) IS NULL THEN NULL
19+ ELSE TRY_CONVERT(INT , product_id)
20+ END as product_id,
21+
22+ CASE
23+ WHEN product_name IS NULL OR product_name = ' ' THEN ' Unknown'
24+ ELSE TRIM (product_name)
25+ END as product_name,
26+
27+ CASE
28+ WHEN sku IS NULL OR sku = ' ' THEN ' Unknown'
29+ ELSE TRIM (sku)
30+ END as sku,
31+
32+ CASE
33+ WHEN TRIM (LOWER (category)) = ' electronics' THEN ' Electronics'
34+ WHEN TRIM (LOWER (category)) = ' clothing' THEN ' Clothing'
35+ WHEN TRIM (LOWER (category)) = ' kitchen' THEN ' Kitchen'
36+ WHEN TRIM (LOWER (category)) = ' office' THEN ' Office'
37+ WHEN TRIM (LOWER (category)) = ' sports' THEN ' Sports'
38+ WHEN TRIM (LOWER (category)) = ' health' THEN ' Health'
39+ WHEN TRIM (LOWER (category)) = ' beauty' THEN ' Beauty'
40+ WHEN TRIM (LOWER (category)) = ' footwear' THEN ' Footwear'
41+ WHEN TRIM (LOWER (category)) = ' toys' THEN ' Toys'
42+ WHEN TRIM (LOWER (category)) = ' bags' THEN ' Bags'
43+ ELSE ' Unknown'
44+ END AS category
845FROM {{ ref(' stg_inventory' ) }} ;
0 commit comments