نمایش نتایج 1 تا 6 از 6

نام تاپیک: Aggregate Text Function For Grouping

  1. #1

    Aggregate Text Function For Grouping

    با سلام و عرض ادب ،

    خدمت دوستان عرض شود میخواستم من رو در جمع متنی یک فیلد text که در یک Query گروه بندی میشود ، راهنمائی کنید .
    مثلا راهی را پیشنهاد فرمائید که نتیجه Query فرضی زیر را داشته باشد
    Select a, concatenate(b) from c group by a
    که فیلد b متنی و تابع concatenate جهت اتصال محتوای فیلد b رکوردهای هم گروه است .
    در صورتیکه قبلا پستی با این مزمون مطرح شده است . ضمن عرض پوزش، آدرس مربوطه را اعلام فرمائید .

  2. #2
    دوست عزیزم،
    من اطلاعی ندارم تابع concatenate که مثال زدین چه عملی انجام میده، اما در SQL Server 2000 فقط عملگرهای Sum, Min, Max, Count, Avg در Group By قابل استفاده هستند.
    اگر این عملگرها کار شما رو انجام نمیده، پس باید منتظر SQL Server 2005 باشید، چون در اونجا Customized Aggregation خواهیم داشت! :)

  3. #3
    درود ،

    جناب ثباتی ، از بذل توجه حضرت عالی کمال تشکر را دارم ،
    اینکه تابع concatenate وجود ندارد و مجموعه توابع Avg,Count,Max,Min,Sum نیز قادر به پاسخ مشکل من نیست، برای من امری محرز و بدیهی است ، لذا صرفا انتظار راه حلی از طریق subQuery یا حتی Stored procedure داشتم . البته من مشکلم را از طریق برنامه نویسی در طرف کلاینت حل کردم لذا دنبال راه حل بهینه ای در طرف سرور دیتا بودم . که در بخش شما با ناکامی مواجه شدم ،

    با توجه به فرمایش شما یک بار دیگه نیاز خود را با یک مثال به شرح زیر عرص میکنم :

    فرض بگیرید جدولی با نام Articles شامل فیلدهای ArticleID و ArticleTitle موجود است که عناوین مقالات را در خود نگه میدارد . همچنین فرض کنید هر مقاله در جدولی دیگر بنام Paragraphs ، با فیلدهای ParagraphID و ParagraphBody و َArticleID پاراگراف بندی می شود
    حال مطلوب است راه حلی در طرف دیتا سرور که کل مقاله ششم را ازطریق یک درخواست برگرداند

    اگر تابع Concatenate وجود میداشت راه حل ساده به شرح زیر قابل بیان بود :
    SELECT Concatenate(ParagraphBody) FROM Paragraphs WHERE ArticleID=6

    لذا
    در صورت داشتن راه حل خاصی ، اینجانب را از دانش پر مایه خود بی بهره نگذارید.

    قبلا از زحمات شما متشکرم

  4. #4
    دوست عزیزم،
    تا جایی که من متوجه شدم، شما نیاز به Aggregate Operator ندارید، بلکه:

    DECLARE @tmp NVARCHAR(1000)
    SET @tmp=''
    SELECT @tmp=@tmp+ParagraphBody + ' ' FROM Paragraphs WHERE ArticleID=6
    SELECT @tmp

  5. #5
    درود

    از توجه شما متشکرم .
    امیدوارم با عنایت به اسکریپت پیشنهادی حضرت عالی ، مشکلم حل شود .
    :موفق:

    بدرود

  6. #6
    موفق باشید :)

تاپیک های مشابه

  1. Digit Grouping- گروه بندی اعداد
    نوشته شده توسط بهنام بهمنی در بخش SQL Server
    پاسخ: 7
    آخرین پست: سه شنبه 20 مرداد 1388, 16:46 عصر
  2. aggregate
    نوشته شده توسط MNosouhi در بخش برنامه نویسی در Delphi
    پاسخ: 5
    آخرین پست: جمعه 13 بهمن 1385, 08:48 صبح
  3. استفاده از توابع Aggregate در ADO.NET
    نوشته شده توسط مطهر در بخش VB.NET
    پاسخ: 0
    آخرین پست: یک شنبه 23 بهمن 1384, 13:46 عصر
  4. aggregate کردن چند هاب با سوییچ
    نوشته شده توسط sirmamad در بخش شبکه و Networking‌
    پاسخ: 3
    آخرین پست: چهارشنبه 02 آذر 1384, 07:33 صبح
  5. درست کردن ردیف برای Grouping
    نوشته شده توسط In_Chan_Nafar در بخش گزارش سازی با Crystal Report
    پاسخ: 2
    آخرین پست: پنج شنبه 18 فروردین 1384, 14:02 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •