来自mySQL新手的问题。我正在尝试构建一个包含有关机器零件(螺钉,支架,气缸等)信息的表格,每个零件对应于该零件所属的机器。将设计数据库,以便每当客户端从表中读取时,将选择来自一个指定机器的所有部件。我试图找出可以从磁盘读取属于某个类别的所有行的最快方法。
排序表不是一个选项,因为很多人可能会一次向表中添加行。由于可能会创建新计算机,因此每台计算机使用一个表也不实用。我希望它必须处理大量的INSERT和SELECT操作,但几乎没有DELETE操作。我想出了一个快速识别属于任何机器的每个部件的计划,我来问一下它是否实用:
包含机器部件数据的每一行将包含前一部件的行号和同一机器的下一部件。单独的表将包含表中显示的每台计算机的最后一部分的行号。脚本可以跟随这些“指针”的列表,跳到表的不同部分,直到找到所有部分。
TL; DR
这种通过行号搜索行的方法是否比通过整数主键搜索更快(因为主键不一定表示表上的位置)?它会快多少?与使用索引相比,它会产生明显的性能提升吗?