Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 类别中项目的顺序_Php_Sql_Database Design - Fatal编程技术网

Php 类别中项目的顺序

Php 类别中项目的顺序,php,sql,database-design,Php,Sql,Database Design,我需要制作一个表格来保存类别中游戏顺序的数据。我本来打算把Game_ID、Category_ID和Order作为3个字段,但我不知道如何处理Order字段 我想我会让订单字段中数字最低的游戏显示在顶部,这样可以很好地工作,但当我想重新订购时可能会变得混乱。如果我有50个游戏,我决定洗牌几次,我将不得不对该类别中的每一行进行SQL更新,以更新顺序 这是最好的方法还是可以简化?如果性能不是一个问题(老实说,通常不是),那么我通常只更新集合中的每个项目 如果您试图优化perf,那么可以在应用程序层中执

我需要制作一个表格来保存类别中游戏顺序的数据。我本来打算把Game_ID、Category_ID和Order作为3个字段,但我不知道如何处理Order字段

我想我会让订单字段中数字最低的游戏显示在顶部,这样可以很好地工作,但当我想重新订购时可能会变得混乱。如果我有50个游戏,我决定洗牌几次,我将不得不对该类别中的每一行进行SQL更新,以更新顺序


这是最好的方法还是可以简化?

如果性能不是一个问题(老实说,通常不是),那么我通常只更新集合中的每个项目

如果您试图优化perf,那么可以在应用程序层中执行一些额外的逻辑来最小化数据库更新。您可以让order字段最初以10(或任何有意义的值)的增量填充。然后,当你重新订购一件物品时,在应用程序层中,尝试计算出一个订单值,将其放入所需的位置。如果不可能,则返回更新所有订单值


我想使用非整数排序字段可能会使这一点更加成功,但每次我看到它是用整数字段实现的。

没有理由对排序字段使用整数字段。另外,确保在
(类别ID,游戏顺序)
上有一个唯一的索引-在每个RDBMS中以保留字命名列似乎不是一个好主意。