【发布时间】:2021-01-31 20:06:54
【问题描述】:
我想为第 1 列和第 2 列的每个新组合生成一个新 ID 号。 例如:
ID | column 1 | column 2
1 | peter | blue
2 | mark | red
1 | peter | blue
随着时间的推移会添加新的行和新的值,这应该能够自动更新。 我尝试了 DENSE_RANK(),这似乎有效。但是当我将它作为一个语句放在计算列中时它给出了一个错误,所以我想这是不可能的? (对 SQL 来说还是很新)。
感谢您的帮助!
错误消息:#1901 - 函数或表达式 'dense_rank()' 不能 在 `ProductIdentifier
的 GENERATED ALWAYS AS 子句中使用
编辑: 我基本上想要的是基于 2 列将一行链接到另一个表。当然,我也可以将两列连接起来,但我在某处读到使用字符串执行此操作会更慢。它最终将是一个大表,目前有 200.000 多行并增长到数百万行。这是我可以/应该做的事情吗?
【问题讨论】:
标签: sql mariadb window-functions mariadb-10.3