File: select_example.sql

package info (click to toggle)
sqlfluff 3.5.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 34,000 kB
  • sloc: python: 106,131; sql: 34,188; makefile: 52; sh: 8
file content (33 lines) | stat: -rw-r--r-- 926 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
-- This query should also parse in ANSI, but as a bigquery example
-- it probably lives here. In particular it has an un-bracketed
-- select clause within a function, and array notation which
-- makes it a useful test case.
WITH age_buckets_bit_array AS (
    SELECT
      bucket_id,
      num_ranges,
      min_age,
      ARRAY(SELECT CAST(num AS INT64) FROM UNNEST(SPLIT(binary, '')) AS num) AS bits,
      age_label
    FROM
      age_buckets
  ),
  bucket_abundance AS (
    SELECT
      bucket_id
      (count_18_24 * bits[OFFSET(0)] + count_25_34 * bits[OFFSET(1)] +
       count_35_44 * bits[OFFSET(2)] + count_45_54 * bits[OFFSET(3)] +
       count_55_64 * bits[OFFSET(4)] + count_65_plus * bits[OFFSET(5)]) / audience_size AS relative_abundance
    FROM
      audience_counts_gender_age
    CROSS JOIN
      age_buckets_bit_array
  )

SELECT
  *
FROM
  age_buckets_bit_array
JOIN
  bucket_abundance
USING (bucket_id)