![]()
From: U. Emre TERZİ (uet_groups@terzzi.com)
Date: Sat 07 Jul 2007 - 13:25:52 EEST
Merhaba,
Bunu fonksiyon yazarak kolaylıkla yapabilirsiniz. Aşağıda ufak bir örnek
hazırladım. Denemediğim için ufak tefek yazım yanlışları olabilir.
/*SQL sorgusu*/
SELECT kitapid, kitapad, isbn, GetAuthors(tabloadi.kitapid,
tabloadi.kitapad, tabloadi.isbn)
FROM tabloadi
GROUP BY kitapid, kitapad, isbn
/*Fonksyion*/
CREATE FUNCTION GetAuthors(intKitapId INT, strKitapAd VARCHAR(255), intIsbn
INT) RETURNS VARCHAR(50)
AS
BEGIN
DECLARE strReturn VARCHAR(50) DEFAULT ''
SELECT CONCAT(strReturn, yazar, ',') INTO strReturn
FROM tabloadi
WHERE kitapid=intKitapId AND kitapad=strKitapAd AND isbn=intIsbn
SET strReturn=SUBSTRING(strReturn,1,LENGTH(strReturn)-1)
RETURN strReturn
END
İyi çalışmalar,
U. Emre TERZİ
_____
From: linux-programlama-bounces@liste.linux.org.tr
[mailto:linux-programlama-bounces@liste.linux.org.tr] On Behalf Of Sami
Beyoglu
Sent: Friday, July 06, 2007 10:49 PM
To: linux-programlama@liste.linux.org.tr
Subject: [Linux-programlama] mysql birden fazla sutunu tek sutunda toplamak
kutuphane icin web sayfası yapıyorum elimde kullanmak istediğim bir view var
asagidaki sekilde
kitapid | kitapad | isbn | yazar | ...
1 ABC 31 A
2 DEF 20 A
1 ABC 31 B
...
şeklinde eğer o kitabın birden fazla yazarı varsa kitap yazar sayısı kadar
tekrar ediyor. Yapmak istediğim öyle bir sql sorgusu yazalım ki
kitapid | kitapad | isbn | yazar | ...
1 ABC 31 A, B
2 DEF 20 A
Şeklinde çıktı versin
Şimdiden teşekkürler
_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
![]()