Php MySQL合并列数据
我下载了一个数据库表,但它一点也没有正常化。它甚至没有索引 不管怎样,现在看起来是这样的:Php MySQL合并列数据,php,mysql,database,normalization,database-normalization,Php,Mysql,Database,Normalization,Database Normalization,我下载了一个数据库表,但它一点也没有正常化。它甚至没有索引 不管怎样,现在看起来是这样的: Id Word Type TypeSet 1 A 2 A 3 A prep. 4 A 5 A prep. 6 A 我想Word有一个唯一的索引。为此,必须合并类型值而不保留重复项 我已经创建了一个集合来存储类型的值。我想把它
Id Word Type TypeSet
1 A
2 A
3 A prep.
4 A
5 A prep.
6 A
我想Word
有一个唯一的索引。为此,必须合并类型
值而不保留重复项
我已经创建了一个集合
来存储类型
的值。我想把它们全部转移到这一组(TypeSet
),然后删除Type
列
然而,更糟糕的是,有些列存储多个Type
s
a. & p. p.
a. & pron.
a. & v.
a. & v. t.
这可以通过从类型
列中剥离空格并将和
视为这些类型的分隔符来解决
如何将类型
值转移到排版
并将列与相同的单词
合并
解决方案不必完全是SQL。这就是我添加PHP标记的原因。为什么希望Word是唯一的?这种数据的简单设计有什么问题?你肯定没有正常化。另外,既然Id只是一个代理项,您正在合并行,为什么要保留它?@philipxy主键
Id
用于快速查找和使用外键的表间关系。重复的单词很乱。我将每秒进行大量查找,并且能够在一个集中检索具有所有类型的单词,这将非常干净。为什么您希望单词是唯一的?这种数据的简单设计有什么问题?你肯定没有正常化。另外,既然Id只是一个代理项,您正在合并行,为什么要保留它?@philipxy主键Id
用于快速查找和使用外键的表间关系。重复的单词很乱。我将每秒进行大量查找,并且能够在一个集合中检索具有所有类型的单词,这将非常干净。