dbeatty10 / dbt-mysql

dbt-mysql contains all of the code enabling dbt to work with MySQL and MariaDB
Apache License 2.0
75 stars 53 forks source link

Split MySQL 5.6 and 5.7 support from 8.0 #42

Closed dbeatty10 closed 3 years ago

dbeatty10 commented 3 years ago

Describe the feature

MySQL 8.0 supports CTE whereas 5.6 and 5.7 do not. Currently, the code is written without CTE to meet the lowest common denominator. If the code is split, then the 8.0 portion can utilize CTE.

Describe alternatives you've considered

  1. do nothing; one adapter without using CTE features (and one PyPi distribution)
  2. one repo with two different adapters (and one PyPi distribution)
  3. one repo with two different adapters and two different PyPi distributions
  4. two different repos (and adapters and PyPi distributions)

Option 2 (one repo with two different adapters) seems most attractive.

Who will this benefit?

The availability of CTE will benefit users of MySQL 8.0. The main use cases: