|
45 | 45 | with huc_projects_dex as |
46 | 46 | (select project_id, |
47 | 47 | huc, |
48 | | - created_on |
49 | | - from vw_projects |
| 48 | + name, |
| 49 | + model_version, |
| 50 | + model_version_int, |
| 51 | + created_on, |
| 52 | + created_on_date |
| 53 | + from default.vw_projects |
50 | 54 | WHERE project_type_id = 'rs_metric_engine' |
51 | 55 | and owner = 'a52b8094-7a1d-4171-955c-ad30ae935296' |
52 | 56 | AND created_on >= 1735689600 |
53 | 57 | AND (contains(tags, '2025CONUS') |
54 | 58 | OR contains(tags, 'conus_athena'))), |
55 | | - huc_projects_scraped as |
56 | | - (select substr(huc12, 1, 10) as huc10, |
57 | | - raw_rme_pq2.rme_date_created_ts |
58 | | - from rs_raw.raw_rs_metric_engine2 raw_rme_pq2) |
59 | | -select distinct project_id, huc, created_on, rme_date_created_ts |
| 59 | + huc_projects_scraped as ( |
| 60 | + -- Grouping ensures strictly 1 row per HUC before the join |
| 61 | + SELECT substr(huc12, 1, 10) AS huc10, |
| 62 | + MIN(rme_date_created_ts) AS oldest_scrape_ts |
| 63 | + FROM rs_raw.raw_rs_metric_engine2 |
| 64 | + GROUP BY substr(huc12, 1, 10) |
| 65 | + ), |
| 66 | + ranked_projects as |
| 67 | +(select project_id, huc, created_on, oldest_scrape_ts, created_on_date, model_version, model_version_int, name |
| 68 | +,CASE |
| 69 | + WHEN ROW_NUMBER() OVER (PARTITION BY huc ORDER BY model_version_int DESC) = 1 THEN true |
| 70 | + ELSE false |
| 71 | + END AS is_latest_version |
60 | 72 | from huc_projects_dex dex |
61 | 73 | left join huc_projects_scraped scr on dex.huc = scr.huc10 |
62 | 74 | where scr.huc10 is null |
63 | | - or scr.rme_date_created_ts < truncate(dex.created_on/1000)*1000 |
| 75 | +OR scr.oldest_scrape_ts < truncate(dex.created_on/1000)*1000 |
| 76 | +) |
| 77 | +select * from ranked_projects |
| 78 | +where is_latest_version |
64 | 79 | """ |
65 | 80 |
|
66 | 81 |
|
|
0 commit comments