malloydata / malloy

Malloy is an experimental language for describing data relationships and transformations.
http://www.malloydata.dev
MIT License
1.92k stars 75 forks source link

Can't use a sql_number as a dimension in an aggregate. #1597

Closed lloydtabb closed 5 months ago

lloydtabb commented 5 months ago

Can not use a sql_number in an aggregate:.

##! experimental { sql_functions }
source: a is duckdb.table('data/state_facts.parquet') extend {
  measure: c is count()
  dimension: state_len is sql_number("LENGTH(${TABLE}.state)") 
}

run: a -> {
  aggregate: s is state_len.sum()
}
lloydtabb commented 5 months ago

Says 'can't define s'

lloydtabb commented 5 months ago

Interestingly, this works...

##! experimental { sql_functions }
source: a is duckdb.table('data/state_facts.parquet') extend {
  measure: c is count()
  dimension: state_len is sql_number("LENGTH(${state})") 
}

run: a -> {
  aggregate: s is state_len.sum()
  group_by: ok is state_len = 2
}