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

نام تاپیک: تعریف متغیر در یک عبارت Select

  1. #1
    کاربر جدید
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    کنار رودخانه زیبای دز!
    پست
    21

    Question تعریف متغیر در یک عبارت Select

    با سلام

    من یک عبارت select دارم که تعدادی از فیلدهاش حاصل انجام عملیات محاسباتی روی ستون های جدوله ولی از همین فیلدهای محاسبه شده در جاهای دیگه توی همون عبارت Select استفاده میشه! چطور میشه فیلدهای محاسبه شده رو تو یه متغیر گذاشت تا باز ازشون استفاده کنیم؟

  2. #2
    کاربر تازه وارد
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    تهران
    پست
    62

    نقل قول: تعریف متغیر در یک عبارت Select

    میشه دقیقتر بگی؟مثالی چیزی؟

  3. #3
    کاربر تازه وارد
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    تهران
    پست
    62

    نقل قول: تعریف متغیر در یک عبارت Select

    ببین اگه اون فیلد های محاسبه شده فقط یکبار قرار هست محاسبه بشه و بعدش توی select شما قرار بگیره اون وقت میتونی یه متغیر تغریف کنی و اون مقادیر محاسبه شده را بهش set کنی و بعد حالا اون select ای که توی جاهای مختلف این مقدار رو میخواد توش بکار ببری.
    اگه غیر از این باشه باید از function ها استفاده کنی

  4. #4
    کاربر دائمی آواتار m.soleimani
    تاریخ عضویت
    دی 1386
    محل زندگی
    اصفهان
    پست
    639

    نقل قول: تعریف متغیر در یک عبارت Select

    تعریف متغیر در یک عبارت Select
    ببین این بهت کمک می‌کنه

    http://www.java2s.com/Code/SQL/Selec...lectclause.htm

  5. #5
    کاربر جدید
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    کنار رودخانه زیبای دز!
    پست
    21

    نقل قول: تعریف متغیر در یک عبارت Select

    نقل قول نوشته شده توسط mosini مشاهده تاپیک
    میشه دقیقتر بگی؟مثالی چیزی؟
    مثلا می خوایم روی جدول T با دو ستون C1 و C2 که هر دو مقدار عدد صحیح دارن یه همچین عبارت Select ی بزنیم:

    Select C1,C2,(C1+C2) as C3,((C1+C2)*2) as C4
    From T
    سوال اینه که آیا میشه کاری کرد که به جای عبارت (C1+C2) که در بخش سوم عبارت Select محاسبه شده یه متغیر قرار بدیم که مقدارش رو داشته باشه و در قسمت چهارم از اون استفاده کنیم؟

  6. #6
    کاربر تازه وارد
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    تهران
    پست
    62

    نقل قول: تعریف متغیر در یک عبارت Select

    ببین دوست عزیز فکر میکنم این جدول T بیش از یه رکورد داره.میتونی از function استفاده کنی. فکر میکنم استفاده از cursor در sql server بتونه کمکی برات باشه.برو دنبالش ببین میشه اینکارو کرد.دقیقا نمیدونم ولی شاید بشه از طریق cursor که برای کار بر روی تک تک سطر ها هست یه کاری کرد.بازم مطمئن نیستم.بررسی کن ما رو هم بی خبر نزار.

  7. #7

    نقل قول: تعریف متغیر در یک عبارت Select

    بصورت زیر میتونید اینکار رو انجام بدید
    With res as(
    SELECT
    C1,
    C2,
    (C1+C2) as C3
    FROM
    T)
    Select
    *
    ,C3 * 2 as C4
    From res

    فکر میکنم استفاده از cursor در sql server بتونه کمکی برات باشه
    بصورت کاملا تجربی توصیه میکنم تا جایی که ممکنه از کرسر استفاده نکنید.

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

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