【发布时间】:2021-08-03 20:01:32
【问题描述】:
我试图从存储在数据库中的查询中找到最常见的非空列组合。我正在使用 SnowSQL 运行查询。
该数据如下所示。唯一不同的是实际数据有 20 列未列出。
| ID | Query | Price | Size | Weight | Year |
|---|---|---|---|---|---|
| 1 | price=32&weight=120 |
True | False | True | False |
| 1 | price=32&weight=120&size=m |
True | True | True | False |
| 1 | price=50&weight=20 |
True | False | True | False |
| 1 | year=1985&weight=120 |
False | False | True | True |
| 1 | price=32&weight=120&size=m&year=1990 |
True | True | True | True |
期望的结果将遵循以下原则:
| Combo | Count |
|---|---|
| Price, Weight | 2 |
| Price, Weight, Size | 1 |
| Year, Weight | 1 |
| Price, Weight, Size, Year | 1 |
任何帮助将不胜感激。谢谢!
【问题讨论】:
-
如果您规范化架构,使用属性值表而不是每个属性的单独列,会容易得多。
标签: sql group-by snowflake-cloud-data-platform