Hasil gabungan kiri dalam hasil kosong
P粉743288436
P粉743288436 2024-04-02 00:27:45
0
1
440

Adakah saya menggunakan kaedah sambungan yang betul di sini? Cuba mencari di mana masalahnya dalam kod. Cuba tukar cantuman dalam, luar dan kanan, hanya untuk mencubanya.

SELECT users.region, count(internal_profile_views.user_id)
from users
Left JOIN internal_profile_views
ON users.id = internal_profile_views.user_id
AND users.id = internal_profile_views.viewed_user_id
GROUP BY users.region;

Struktur jadual: https://i.stack.imgur.com/nFUZO.jpg

Keluaran yang saya dapat:

Barat 0 Timur Laut 0 Selatan 0 Lain-lain 0 Midwest 0

P粉743288436
P粉743288436

membalas semua(1)
P粉986937457

Bergantung pada skema anda, nampaknya internal_profile_views mewakili jadual M:N antara profil pengguna dan pengguna yang melihat profil tersebut.

Dalam kes ini, baris dalam internal_profile_views中具有相同的user_idviewed_user_id dengan nilai user_id dan viewed_user_id bermakna pengguna sedang melihat profil mereka sendiri dan baris dengan nilai yang berbeza bermakna pengguna sedang melihat maklumat Orang lain.

Dalam penyata penyertaan anda, anda menggunakan syarat di mana user_idviewed_user_id必须匹配相同的users.idrekod boleh dimasukkan ke dalam keputusan. Kemungkinan besar anda hanya berniat untuk menyertai satu lajur, bukan dua.

Berdasarkan ini, pertanyaan anda mungkin salah satu daripada yang berikut:

SELECT viewer.region as Viewer_Region, count(views.user_id) as Unique_Viewers
FROM internal_profile_views views
INNER JOIN users viewer ON views.user_id = viewer.id
GROUP BY viewer.region;
SELECT profileOwner.region as Profile_Region, count(views.user_id) as Unique_Viewers
FROM internal_profile_views views
INNER JOIN users profileOwner ON views.viewed_user_id = profileOwner.Id
INNER JOIN users viewer ON views.user_id = viewer.id
GROUP BY users.region;
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan