私はユーザープロファイルを作成しようとしているので、データベースから彼女のすべてのいいねを表示しています。しかし、アクティブなセッションを持っているユーザーが、ユーザープロファイルの一部を高く評価しているかどうかを確認したいと思います。
したがって、テーブル名はlovesであり、構造は次のとおりです。
photo_id (int)
nick (varchar)
date (timestamp)
写真のテーブル構造:
photo_id (int)
path (varchar)
title (varchar)
category (varchar)
nick (varchar)
date (timestamp)
これは私がクエリを実行するためにトレイリングしている方法です:
SELECT photos.photo_id
FROM photos
INNER JOIN loves ON loves.nick = 'userProfileName'
WHERE loves.nick = 'userWithActiveSession'
AND photos.photo_id = loves.photo_id
ORDER BY loves.photo_id DESC
LIMIT 100
このクエリは、アクティブなセッションを持つユーザーが、プロファイル要求されたユーザーからの高評価の写真で高評価したすべての写真IDを返す必要があります。
例
loves table:
nick photo_id
userProfile 26
userProfile 1000
userProfile 27
userProfile 520
userSession 26
userSession 680
userSession 1000
したがって、両方のユーザーが同じphoto_idを気に入っているため、クエリは2つのphotos_id(1000と26)のみを返す必要があります。
私がやりたいことをするためにこのコードを変更する方法はありますか?