Remix.run Logo
CharlesW 5 days ago

It's a lot more. A SQL VIEW is just a saved query, where a semantic layer defines the shared meaning of the data, and helps enforce consistent metrics, joins, and logic across tools. You'd be surprised at how many ways "active customer" can be represented as SQL.

porridgeraisin 5 days ago | parent [-]

Doesn't a view do that?

  create view active_cx as select * from customer join audit_events using(...) join ... where -- active condition

  -- use active_cx wherever

  select ... from orders join active_cx using(...) where ts > start_of_month() group by active_cx.id
cryptonector 5 days ago | parent [-]

It sounds like "semantic layer" == views/queries created automatically and on the fly.