senben Bu da bir tabloda tutulan abonelere göre yapılıyor. Örnek veriyorum aboneler adında(mantığı için bu şekilde isimlendirmeler kullanıyorum) bir tablo olduğunu düşünün. Alanları ise Id, kanalId, aboneId olsun. Abone olduğunuzda o sayfanın Id numarası ve sizin Id numaranız bu tabloya ekleniyor. Böylelikle abonesi olmuş oluyorsunuz. Bir fonksiyon ile eğer kanal sahibi video paylaşınca kişilere mail gidiyor. Peki bu nasıl oluyor?
Kolay bir SQL diyelim(Youtube bu tarz SQL kullanmaz, big data olduğu için farklı SQL'ler kullanılır. Ben temelden örnek veriyorum):
SELECT aboneID from aboneler WHERE kanalId=1
Burada 1 Id'sine sahip olan tüm aboneler listelenmekte. Bir while veya for döngüsü ile tek tek kişilere mail gönderilmekte. Hatta yukarıdaki SQL'i geliştirelim.
SELECT mail from kullanicilar where id in (select aboneId from aboneler where kanalid=1)
Yukarıdaki SQL ise abone olan tüm kullanıcıların direkt mail adresini gösterir. Yani 1 numaralı kanala ait abonelin mailleri. Bunu döngü ile tek tek mail gönderilerek dediğiniz işlem yapılabilir.