- Katılım
- 3 Şubat 2014
- Mesajlar
- 1,744
- Tepkime puanı
- 0
- Puanları
- 0
Bu tür fonksiyonlar , satırdan tablo döndüren fonksiyonlara çok benzer. Farkı ise , dışarıya değer döndürürken,tablo yapısındaki değişkene fonksiyon içerisinde muhtelif defa veri eklenmesidir.
Buna bir örnek yaparak daha iyi anlayalım.
Müşterilerin satın aldığı veya sepetine attığı ürünlerin ve adetlerinin listesini döndüren bir fonksiyon yazalım.
Kod:
CREATE FUNCTION FN_SEVDIGIM_URUNLER(@KullaniciKod INT)
@FN_SEPETIM TABLE(urunKod INT,urunAd VARCHAR(250),Adet INT)
AS
BEGIN
INSERT @FN_SEPETIM
SELECT SD.UrunKod,U.urunAd,SD.Adet
FROM tblSiparisDetay SD
INNER JOIN tblUrun U ON U.UrunKod=SD.UrunKod
INNER JOIN tblSiparis S ON S.FaturaKod=SD.FaturaKod
WHERE S.KullaniciKod=@KullaniciKod
INSERT @FN_SEPETIM
SELECT S.UrunKod,U.urunAd,SD.Adet
FROM tblSepet S
INNER JOIN tblUrun U ON U.UrunKod=S.UrunKod
WHERE S.KullaniciKod=@KullaniciKod
RETURN
END
Buna bir örnek yaparak daha iyi anlayalım.
Müşterilerin satın aldığı veya sepetine attığı ürünlerin ve adetlerinin listesini döndüren bir fonksiyon yazalım.
Kod:
CREATE FUNCTION FN_SEVDIGIM_URUNLER(@KullaniciKod INT)
@FN_SEPETIM TABLE(urunKod INT,urunAd VARCHAR(250),Adet INT)
AS
BEGIN
INSERT @FN_SEPETIM
SELECT SD.UrunKod,U.urunAd,SD.Adet
FROM tblSiparisDetay SD
INNER JOIN tblUrun U ON U.UrunKod=SD.UrunKod
INNER JOIN tblSiparis S ON S.FaturaKod=SD.FaturaKod
WHERE S.KullaniciKod=@KullaniciKod
INSERT @FN_SEPETIM
SELECT S.UrunKod,U.urunAd,SD.Adet
FROM tblSepet S
INNER JOIN tblUrun U ON U.UrunKod=S.UrunKod
WHERE S.KullaniciKod=@KullaniciKod
RETURN
END