我有一个数据库表,其中每一行(电影)都有几个数字标签(电影类别)。目前我将所有这些标签作为字符串放在同一列中,并使用 %LIKE% 搜索它们,当我需要查找某个类别中的所有电影时,这需要缓慢的全表扫描。
我想加快搜索这些标签的速度,但我能想到的唯一解决方案是创建第二个包含两个整数列的表。第一个包含单个类别,第二个包含电影的 rowid。
但是,这将需要在数据库中进行更多的插入。一行平均有 10 个标签,所以我必须插入 11 行,而不是插入单行。由于我的应用程序执行的插入操作比实际查询多得多,因此插入性能至关重要。
在不牺牲插入性能的情况下,还有其他方法可以解决这个问题吗?或者插入 1 行 10 列 VS 10 行 2 列之间没有太大区别吗?