在我正在使用 PHP/MySQL 开发的社交网络上,我有一个朋友页面,它会显示用户拥有的所有朋友,就像大多数网络一样。我在 MySQL 中有一个朋友表,它只有几个字段。auto_ID、from_user_ID、to_friend_ID、日期
我想让朋友页面有几个不同的选项来对结果进行排序,
通过 auto_ID 基本上按照添加朋友的顺序。它只是一个自动增量 ID
按日期的新朋友,将使用日期字段
通过朋友的名字,将有一个按字母顺序排列的列表。
字母顺序是我需要一些建议的地方。我将有一个字母 AZ 的列表,当用户单击 K 时,它将显示所有以 K 开头的用户名,依此类推。诀窍是它需要很快,所以在用户表上执行 JOIN 不是一种选择,尽管大多数人会认为它很快,但这不是我想要执行此操作的性能。我的一个想法是在我的友谊表中添加一个额外的字段并将用户名的第一个字母存储在其中。用户可以随时更改那里的名称,因此我必须确保在用户更改名称的任何时候更新可能的数千条记录。
有一个更好的方法吗?