Sosyal ağ gibi bir site oluşturuyorum. 3 masam var. Her kullanıcıyı ve toplam arkadaş sayısını ve engellenen arkadaş sayısını buluyorum.Yuvalı Sorgu Nasıl Yazılır Üç tabloyu Bağlama?
1. tbl_Registrations
| Id | FirstName |
*************************
1 User1
2 User2
3 User3
4 User4
5 User5
6 User6
7 User7
8 User8
2.tbl_Friends
| Id | SenderId | ReciverId | Status |
1 1 2 Accept
2 3 1 Accept
3 4 1 Accept
4 2 3 Accept
5 3 8 Accept
6 4 2 Accept
7 4 3 Accept
8 8 4 Accept
3. tbl_Status
| Id | UserId | Status |
1 1 Blocked
2 3 Blocked
3 4 Allowed
4 2 Blocked
5 6 Blocked
6 5 Allowed
7 8 Blocked
8 7 Allowed
benim sorgu ben sadece adını ve toplam arkadaşlar alacak benim sorgu kullanarak
SELECT tbl_Registrations.FirstName, COUNT(*) AS TotalFriends
FROM tbl_Friends INNER JOIN tbl_Registrations ON tbl_Friends.SenderId = tbl_Registrations.Id
OR tbl_Friends.ReciverId = tbl_Registrations.Id
WHERE (tbl_Friends.Status = 'Accept')
GROUP BY tbl_Registrations.FirstName
olduğunu. Aynı sorguda engellenen Arkadaşların sayısını bulun.
benim beklenen çıkışı
| FirstName | TotalFriendsCount | BlockedFriendsCount |
sizin tbl_Status benim için mantıklı değil deneyin mi? Kim tarafından engellendi? – Veljko89
Yönetici tarafından engellendi. Yönetici Bölümü yapıyorum. Yönetici tarafında ben kullanıcı listesi listeleme ve arkadaşları saymak ve bloke arkadaşlar saymak @ Veljko89 – Ritz
Yani tbl_Friends.Status 'Engellendi' söylemek ister misiniz? Ben sadece hangi sütunun BlockedFriends – Veljko89