2
SELECT DISTINCT u.first, u.last FROM users u, user_friends f 
WHERE f.userId = 1 AND u.id = f.friendId 
ORDER BY u.first ASC, u.last ASC

基本的に、私がやろうとしているのは、現在のユーザー (この場合は ID が 1) の友人であるすべてのユーザーのリストを、姓と名の両方の昇順で取得することです。

したがって、Alice Anna は Alice Zanna の上に表示されます。

ただし、現在は最初の名前のみが注文されています。つまり、Alice Anna と Alice Zanna は両方とも Bob Anna の上に表示されますが、Alice Zanna が Alice Anna より前にデータベースに追加された場合は、Alice Anna の上に表示されます。

姓と名の両方を正しく並べ替える方法についてのアイデアはありますか?

4

2 に答える 2

2

連結された姓名をソートするのはどうですか:

SELECT DISTINCT u.first, u.last FROM users u, user_friends f 
WHERE f.userId = 1 AND u.id = f.friendId 
ORDER BY CONCAT(u.first, u.last) ASC
于 2012-06-25T01:11:57.817 に答える
1

連結された値による順序付けなど

Order by u.First + ' ' + u.Last Asc
于 2012-06-25T01:11:31.343 に答える