1
Select 1 
from Friend 
where Friend.UserID = 1 
  and FriendID = (select User.UserID from User where UserName = 'friend_user');

私がやろうとしているのは、ユーザーが別のユーザーと「友達」であるかどうかを確認することです。したがって、ユーザーが「foo.com/user/username」に移動すると、ユーザー名が渡され、それがチェックを行うときです。2つの選択を使用したくないのですが、これが唯一の方法のようです。このようなタスクを実行するための最良の方法についての提案をいただければ幸いです。

4

2 に答える 2

1

代わりに使用できますJOIN

Select 1 
from Friend f
join User u
    on f.FriendID = u.UserID
    and u.UserName = 'friend_user'
where 
    f.UserID = 1;
于 2013-02-07T20:08:24.770 に答える
1

回答:「これは機能しますが、Friends UserNameなど、Userテーブルから何かを選択したい場合はどうなりますか?–」

Select u.username, count(f.friends)
from Friend f
join User u
    on f.FriendID = u.UserID
    and u.UserName = 'friend_user'
where 
    f.UserID = 1;
于 2013-02-07T20:51:03.123 に答える