-1
SELECT r.game, u.username, r.userid, r.points, u.format
FROM ".TBL_RANKING." r
INNER JOIN ".TBL_USERS." u
ON u.id = r.userid
WHERE r.type = '1' AND r.game =
(SELECT name
FROM ".TBL_GAME."
WHERE active = '1'
ORDER BY rand()
LIMIT 1)
AND u.format =
(SELECT name
FROM ".TBL_FORMAT."
WHERE active = '1'
ORDER BY rand() LIMIT 1)
ORDER BY r.points DESC LIMIT 5
このクエリは動作していません。奇妙なユーザーを選択していることもあります。結合クエリのエラー
クエリが必要です。フォーマットテーブルからランダム形式-selectゲームテーブル からランダムゲーム-select -selectユーザーがゲームにランク付けされますが、ランダムな場合にのみフォーマットからそう
を選択選択は、Xbox 360のFIFA 12だった、それは
をフォーマットタイプのXbox 360からすべてのユーザーを見つけるだろうし、FIFA 12にランク付けされ、次のようにテーブルの構造は次のとおりです。
*tbl_ranking*
id
userid
game
points
type
*tbl_users*
id
username
format
*tbl_game*
id
name
*tbl_format*
id
name
誰も問題をここで見ることができますか?
に参加し、左使用してサブクエリを持ってしてみてください!パーフェクト、あなたはコードについて少し説明できますので、私は主な変更を理解し、なぜですか? – sark9012
WHERE SubQueriesステートメントの条件を反映するLEFT JOINを使用し、temp1.name!= '' AND temp2.name!= ''の条件を使用してすべてのヌル値を削除しました。 – Bryan