我正在尝试从MySQL数据库表中选择信息,遵循自定义模式对结果进行排序。
我想要实现的目标
我的表中有一列可以有4个不同的值(条目类型)。
我们称之为AAA,BBB,CCC,DDD,模式应该是这样的:
AAA
AAA
BBB
AAA
CCC
DDD
所以我想要一个像这样排序的表:
Before After
AAA AAA
AAA AAA
AAA BBB
AAA AAA
AAA CCC
BBB DDD
BBB AAA
CCC AAA
DDD BBB
我已经尝试了FIELD()函数,但它没有对它们进行排序。
我正在考虑使用另一个表进行排序,但我会有不同的查询,结果不同,我希望模式始终以相同的方式启动。
由于我不确定MySQL中是否存在此选项,因此我对任何建议和解决方法都持开放态度。
修改
好吧,我没有说这个就犯了一个大错误。该表有多列,ID作为AI主键。具有AAA,BBB,CCC,DDD的列是依赖于排序的列。
所以我想通过这个专栏来命令我的查询,但是按照上面描述的方式。
答案 0 :(得分:0)
我认为,如果关系数据库表中的单个列可以具有相同值,那么通常是公平的如果不是一条记录,倾向就会成为其他列中的值,这些值会使记录具有不同的含义,或者在记录的排序中具有明显的位置。
当您可能需要包含至少一个其他信息项来提供订购时,您将专注于一个专栏。如果其他信息不在数据库中,则可能需要将其放入数据库中。