Skip to content

Commit 904676a

Browse files
committed
join all nypd beat polygons
1 parent 7d25e65 commit 904676a

File tree

2 files changed

+20
-13
lines changed

2 files changed

+20
-13
lines changed

products/cscl/models/intermediate/adjacent_polygons/int__segment_nypdbeat.sql

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,15 @@ WITH segment_offsets AS (
1111
SELECT
1212
co.lionkey,
1313
co.segmentid,
14-
left(left_beat.post, 1) AS left_nypd_service_area,
15-
left(right_beat.post, 1) AS right_nypd_service_area
14+
left_beat.sector AS left_nypd_sector,
15+
left_beat.geo_type AS left_beat_geo_type,
16+
CASE WHEN left_beat.geo_type = 'HP' THEN left(left_beat.post, 1) END AS left_nypd_service_area,
17+
right_beat.sector AS right_nypd_sector,
18+
right_beat.geo_type AS right_beat_geo_type,
19+
CASE WHEN right_beat.geo_type = 'HP' THEN left(left_beat.post, 1) END AS right_nypd_service_area
1620
FROM segment_offsets AS co
1721
-- using a cte around reference can confus the postgres compiler to not use index
1822
LEFT JOIN {{ source("recipe_sources", "dcp_cscl_nypdbeat") }} AS left_beat
19-
ON
20-
st_within(co.left_offset_point, left_beat.geom)
21-
AND left_beat.geo_type = 'HP'
23+
ON st_within(co.left_offset_point, left_beat.geom)
2224
LEFT JOIN {{ source("recipe_sources", "dcp_cscl_nypdbeat") }} AS right_beat
23-
ON
24-
st_within(co.right_offset_point, right_beat.geom)
25-
AND right_beat.geo_type = 'HP'
25+
ON st_within(co.right_offset_point, right_beat.geom)
Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,16 @@
1+
WITH segments AS (
2+
SELECT * FROM {{ ref('int__segments') }}
3+
),
4+
nypd AS (
5+
SELECT * FROM {{ ref('int__segment_nypdbeat') }}
6+
)
17
SELECT
28
'segment joined to no nypd beat' AS error,
3-
globalid,
4-
source_table,
9+
segments.globalid,
10+
segments.source_table,
511
'segmentid' AS record_id_type,
6-
segmentid AS record_id,
12+
segments.segmentid AS record_id,
713
'' AS message
8-
FROM {{ ref('int__lion') }}
9-
WHERE left_nypd_service_area IS NULL AND right_nypd_service_area IS NULL
14+
FROM segments
15+
INNER JOIN nypd ON segments.lionkey = nypd.lionkey
16+
WHERE nypd.left_beat_sector IS NULL AND nypd.right_beat_sector IS NULL

0 commit comments

Comments
 (0)