在SQL中存储排序顺序的最佳方式是什么?
顶级的人想要排序顺序可以在我们的应用程序中自定义.所以我有一个有效地定义数据类型的表.什么是存储我们的排序顺序的最佳方式.如果我刚刚创建了一个名为“Order”的列,每次更新一行的顺序时,我想我将不得不更新每一行的顺序来确保后代.有更好的方法吗?
解决方法迄今为止,没有一个答案触及了自定义排序顺序的真正问题,这就是当两个不同的人想要以不同的方式排列相同的记录时会发生什么.如果您需要自定义排序顺序,则需要一个相关表来存储,而不是其他字段.该表将具有userid,数据的recordId和记录的排序顺序.这样乔·史密斯可以有一个订单,而萨利·琼斯(Sally Jones)也可以使用相同的数据.现在您有新的记录被添加到数据集的问题.你把它们放在排序顺序或结束的开始处,还是要求他们在他们被添加到集合之前为它们设置一个订单.这实际上是一个非常复杂的瑕疵,通常不值得实施的时间,因为几乎没有一次使用该系统的地方(我的意思是我真的想通过一百条记录并标记个别订单的每一个?).现在,它会保存所有记录的顺序的复杂的中断(当然,这将在下次查询运行时需要更改,因为将有新的记录).这是非常痛苦的有限的无关性的过程. 我曾经在一个写作应用的提案中做到这一点,因为我们需要能够按照我们认为对客户最令人印象深刻的顺序排列原始的部分和任务.即使这样,我们也不得不制定一个默认的订单,所以他们只需要移动他们真正想出现的两三件事情,而不是订购10,000个单独的零件. 一个更好的选择,如果你可以让他们买下来,是允许他们按列(desc或asc)排序数据.通常可以设计用户界面,以便如果您单击列标题,它将使用该列的数据.这是相对直截了当的,满足大多数定制订单的需求. 您真的需要与管理层讨论这一要求,并获得他们希望如何工作的细节,我想定制订单.这通常是人们认为他们想要的东西之一,但并不真正使用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- sqlserver常用函数/存储过程/数据库角色
- sql2000挂起无法安装的问题的解决方法
- sql – 具有Desc / Asc排序的Order By子句的Case语句
- SQLServer2000安装程序提示“有一个挂起的安装实例,请重起
- 面对 sqlserver2008 我悲催了
- 完美解决SQLserver 2000“指定的服务并未以已安装的服务存在
- 使用YYYY-MM-DD格式更新mssqlserver中的sql date字段
- SQL Server 2008中的功能与mysql中的GREATEST类似?
- SQLServer 2008 不能启动解决方案
- sql – Oracle:如何比较查询中的两个NUMBERS值?’TRUE’或