2 つのテーブルがあり、1 つはヒットのレコード、もう 1 つはユーザー テーブルです。ユーザーがログインしている場合、ヒットはそのユーザーの ID で記録されます。ユーザーがログインしていない場合、ヒットは次のように記録されます。user_id = 0
レポートを実行するときに、ユーザー テーブルに対してヒットを JOIN してユーザー名を取得したいのですが、ID 0 のユーザーがいないため、不適切なデータが返されます (たとえば、ログインしていないすべてのヒットに対して結果がありません)。 )。JOIN 条件が満たされない場合、「Guest」のようなダミーのユーザー名を選択する方法はありますか?
クエリは次のとおりです。
SELECT DATE_FORMAT(a.timestamp, '%Y-%m-%d') date, count(a.*) hits, a.user_id, b.username
FROM hits a
JOIN users b ON a.user_id = b.id
WHERE 1