私は3つのテーブルを持っています:
ユーザー
- id_user
- 名前
ユーザー画像
- id_picture
- id_user
- ファイル名
- ord(写真の順番)
ユーザーステッカー
- id_ステッカー
- id_user_from
- id_user_to
これは私の現在の SQL 呼び出しです。
SELECT
u.id_user,
u.name,
p.filename,
s.id_sticker,
FROM user AS u
LEFT JOIN user_picture AS p ON p.id_user = u.id_user
LEFT JOIN user_sticker AS s ON s.id_user_to = u.id_user
WHERE u.id_user = 1
ORDER BY (SELECT COUNT(*) FROM user_sticker AS s2 WHERE s2.id_user_to = u.id_user AND s2.id_sticker = s.id_sticker)
特定のユーザーの最も一般的な受信ステッカーと、ユーザーの最初の利用可能な画像 (ord = 1 を持つもの) を取得する必要があります。ユーザーは、多くのステッカー (および繰り返しのステッカー) と多くの写真を持つことができます。