クラス用の簡単なマイクロブログ Web サイトを設計しており、スクロール ページネーションの SQL ステートメントに関するヘルプが必要です。
User と Follows の 2 つのテーブルがあります。
「ユーザー」テーブルには、uid、FirstName、LastName、Email、および Username があります。
私はrid、FollowedName、およびFollowingNameを持つ別の「フォロー」テーブルを持っています。
たとえば、ユーザー名「Alex」がユーザー名「Bob」の後に続く場合、FollowedName="Bob" および followingName="Alex" を含む新しい行が存在します。
検索ページの場合、ユーザーが人気度 (フォロワー数に基づく) に基づいて並べ替えることができるようにします。したがって、「ユーザー」からすべての行を選択し、各ユーザーが持つ「フォロー」テーブルのエントリ数に基づいてそれらを並べ替える SQL ステートメントが必要です。
これに加えて、uid が文字列名 $explodedids にあるユーザーを除外するステートメントが必要です。
すべてが機能していますが、どこに置くべきかわかりません"WHERE uid NOT IN (".$explodedids.")".
これは、適切に返されますが、$explodedids を除外しない私のステートメントです。
"SELECT Username, FirstName, LastName, Email, COUNT( Followingname ) AS count
FROM (SELECT u.Username, u.FirstName, u.LastName, u.Email, f.Followingname
FROM User AS u LEFT JOIN Follows AS f ON u.Username = f.Followingname)
AS T GROUP BY Username ORDER BY count DESC LIMIT ".$postnumbers
$postnumbers は、スクロールするページネーションの制限数です。WHERE NOT IN を間違った場所に入れただけだと確信していますが、もし皆さんが私を助けてくれたら、それは素晴らしいことです.