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

نام تاپیک: بررسی دو شرط در یک کوئری

  1. #1
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,777

    Question بررسی دو شرط در یک کوئری

    سلام دوستان من دوتا جدول دارم میخوام از این دوتا جدول خروجی بگیرم. مد نظرمم نیست چه تو اس کیو ال انجام بشه چه تو سی شارپ برا همین اینجا تایپیکو گذاشتم. مغزم یه لحظه هنگ کرد شاید خیلی ساده باشه ولی منو گیج کرده این مورد.


    جدول اولم شامل (شماره پرونده - نوبت - تاریخ درخواست)

    جدول دومم (شماره پرونده - نوبت - تاریخ انجام)

    خروجی مد نظرم:

    تمامی پرونده هایی با نوبت مشخص موجود در جدول اول که در جدول دوم با همان نوبت وجود ندارد.

    ممنون میشم راهنماییم کنید.

  2. #2
    مدیر بخش آواتار danialafshari
    تاریخ عضویت
    تیر 1387
    محل زندگی
    هر کجا هستم باشم آسمان مال من است
    پست
    2,906

    نقل قول: بررسی دو شرط در یک کوئری

    چرا هر دو رو در یک جدول نمیذارید؟
    برای کوئری هم اونایی رو نشون بده که تاریخ انجام برابر مقدار هست/نیست
    لطفاً از پرسیدن سوال در خصوصی خودداری کنید.
    قبل از ایجاد تاپیک، حتماً قوانین سایت را مطالعه فرمایید.
    قوانین پرسش های دانشجویی
    برای درست وارد شدن کد در قالب C#‎‎‎ سایت، ابتدا کد رو درون Notepad.exe کپی سپس از اونجا به سایت در قالب C#‎‎‎ منتفل کنید
    نرم افزار code manager دستیار برنامه نویسان جهت نگهداری کد ها

  3. #3
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,777

    نقل قول: بررسی دو شرط در یک کوئری

    نقل قول نوشته شده توسط danialafshari مشاهده تاپیک
    چرا هر دو رو در یک جدول نمیذارید؟
    برای کوئری هم اونایی رو نشون بده که تاریخ انجام برابر مقدار هست/نیست
    ماهیت کار جوریه که باید اول جدول 1 پر بشه . بعدا جدول 2 پر میشه. امکان ادغامش نیست بنا به دلایلی

  4. #4

    نقل قول: بررسی دو شرط در یک کوئری

    نقل قول نوشته شده توسط رامین مرادی مشاهده تاپیک
    ماهیت کار جوریه که باید اول جدول 1 پر بشه . بعدا جدول 2 پر میشه. امکان ادغامش نیست بنا به دلایلی
    میشه بگید چه دلایلی؟


  5. #5
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,777

    نقل قول: بررسی دو شرط در یک کوئری

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    میشه بگید چه دلایلی؟
    چون تا الان در واقعیت جدول 2 پر میشد و بخاطر تغییرات ساختاری و تغییر روند کار ابتدا یک درخواست میاد و ثبت میشه تو جدول اول بعد کاری بابت اون درخواست ثبت میشه تو جدول 2. حالا ما باید ببینیم کدوم درخواستا مونده که باید انجام بشه. اگه یک شرط دخیل بود با یه سلکت تو در تو میشد حل کرد. اما چون همزمان دوتا شرط دخیله اینجاشو موندم چیکار کنم.

  6. #6

    نقل قول: بررسی دو شرط در یک کوئری

    نقل قول نوشته شده توسط رامین مرادی مشاهده تاپیک
    چون تا الان در واقعیت جدول 2 پر میشد و بخاطر تغییرات ساختاری و تغییر روند کار ابتدا یک درخواست میاد و ثبت میشه تو جدول اول بعد کاری بابت اون درخواست ثبت میشه تو جدول 2. حالا ما باید ببینیم کدوم درخواستا مونده که باید انجام بشه. اگه یک شرط دخیل بود با یه سلکت تو در تو میشد حل کرد. اما چون همزمان دوتا شرط دخیله اینجاشو موندم چیکار کنم.
    اینی که گفتید در ساده ترین حالت با اضافه کردن یک ستون به همان جدول قدیمی قابل حل هست.

  7. #7
    کاربر دائمی آواتار mmbguide
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    منظومه شمسی
    پست
    704

    نقل قول: بررسی دو شرط در یک کوئری

    بهترن روش همونی هستش که جناب Mahmoud.Afrad عنوان کرده ولی اگر هم خواستی سازوکار خودت رو داشته باشی میتونی بواسطه Left Join به هدف برسی. در واقع با این نوع Joint تمام ردیف های جدول اول رو میتوی داشته باشی و در جدول دوم اگر چیزی وجود نداشته باشه مقدار Null برگردونده میشه و برای هر دو جدول میتونی شرط های جداگانه ای رو اعمال کنی

  8. #8
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,777

    نقل قول: بررسی دو شرط در یک کوئری

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    اینی که گفتید در ساده ترین حالت با اضافه کردن یک ستون به همان جدول قدیمی قابل حل هست.
    چه ستونی اضافه بشه؟ یعنی تاریخ درخواست بهش اضافه بشه بعد کاربر بار اول فقط تاریخ درخواستو پر بکنه و دفعه بعد بره اطلاعات تکمیلی اونو بزنه؟

  9. #9
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,777

    نقل قول: بررسی دو شرط در یک کوئری

    نقل قول نوشته شده توسط mmbguide مشاهده تاپیک
    بهترن روش همونی هستش که جناب Mahmoud.Afrad عنوان کرده ولی اگر هم خواستی سازوکار خودت رو داشته باشی میتونی بواسطه Left Join به هدف برسی. در واقع با این نوع Joint تمام ردیف های جدول اول رو میتوی داشته باشی و در جدول دوم اگر چیزی وجود نداشته باشه مقدار Null برگردونده میشه و برای هر دو جدول میتونی شرط های جداگانه ای رو اعمال کنی
    در واقع جوین ها نمیتونه جواب بده البته با اطلاعاتی که من دارم. چون من نمیخوام ادغام یا اشتراک جداول رو بدست بیارم. تست هم کردم جواب نگرفتم.با هیچکدوم

  10. #10
    کاربر دائمی آواتار mmbguide
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    منظومه شمسی
    پست
    704

    نقل قول: بررسی دو شرط در یک کوئری

    ببینید در انجام یک طراحی روش های متفاوتی وجود داره. مشابه جدول شما رو من در یک پروژه با 134 ستون دارم که به مرور زمان و در بخش ها مختلفی تکمیل میشه. ولی در Join کردن ستون ها فقط و فقط ستون مورد نظر رو Select میکنم و ...

    آنچه که شما توضیح دادید خیلی پیچیده نیست و طراحی تنها یک جدول کفایت میکنه و اگر نیاز به دو جدول داشته باشید با Join کردن هم جواب میده. واقعیت اینه که در جدول دو شما نیاز به دانستن ForeinKey خواهید داشت، حالا یا این پارامتر را از جای دیگری بدست میآورید و بعد ارسال میکنید و یا در Joint کردن جداول میتونید او رو به برنامه ارسال کنید.

    البته برای انجام کار روش ها ممکنه زیاد باشه و تشخیص بهترین روش به خودتون برمی گرده ولی طراحی در یک جدول بهترین کار هستش

  11. #11

    نقل قول: بررسی دو شرط در یک کوئری

    نقل قول نوشته شده توسط رامین مرادی مشاهده تاپیک
    چه ستونی اضافه بشه؟ یعنی تاریخ درخواست بهش اضافه بشه بعد کاربر بار اول فقط تاریخ درخواستو پر بکنه و دفعه بعد بره اطلاعات تکمیلی اونو بزنه؟
    آره دیگه،



    البته میشه طوری طراحی را تکمیل کرد که روندها (تاریخ درخواست، تاریخ انجام و مثلا تاریخ بازبینی و ...) در یک جدول باشند و شما در یک جدول دیگر رویداد این روندها رو ثبت کنید. در این حالت باید تغییراتی در طراحی و دیتابیس اعمال کنید.


    پی نوشت:
    قبل از هر کاری بکاپ کامل از دیتابیس تهیه کنید.

  12. #12
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,777

    نقل قول: بررسی دو شرط در یک کوئری

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    آره دیگه،



    البته میشه طوری طراحی را تکمیل کرد که روندها (تاریخ درخواست، تاریخ انجام و مثلا تاریخ بازبینی و ...) در یک جدول باشند و شما در یک جدول دیگر رویداد این روندها رو ثبت کنید. در این حالت باید تغییراتی در طراحی و دیتابیس اعمال کنید.


    پی نوشت:
    قبل از هر کاری بکاپ کامل از دیتابیس تهیه کنید.
    من دو جدول رو با هم ادغام کردم حالا رله حل سری برا انتقال اطلاعات جدول 2 به 1 چیه؟ آی دی جدول 1 به عنوان کلید خارجی جدول 2 هستش. فقط اطلاعات خیلی زیاده و نمیشه دونه دونه منتقل کرد.

  13. #13
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,777

    Cool نقل قول: بررسی دو شرط در یک کوئری

    این روش رو تونستم به کار ببرم میزارم اینجا بقیه دوستان هم خواستن استفاده کنن



    MERGE [Table_1] t1
    USING [Table_2] t2
    ON t1.id = t2.t1id
    WHEN MATCHED THEN
    UPDATE
    SET t1.address = t2.address;



    فک کنم واضحه اگه بیشتر خواستید بدونید توضیح بدم کد رو.

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

  1. مبتدی: اموزش ساخت قالب فارسی و ریسپانسیو وردپرسی رو کسی داره ؟
    نوشته شده توسط mohammadreza65 در بخش PHP
    پاسخ: 3
    آخرین پست: یک شنبه 06 مرداد 1398, 15:00 عصر
  2. پاسخ: 7
    آخرین پست: پنج شنبه 31 اردیبهشت 1394, 20:28 عصر
  3. پاسخ: 0
    آخرین پست: چهارشنبه 30 بهمن 1392, 09:31 صبح
  4. سورس فارسی نویس، نوشتن فارسی در برنامه هایی که زبان فارسی رو پشتیبانی نمیکنند
    نوشته شده توسط سید حمید حق پرست در بخش برنامه نویسی در 6 VB
    پاسخ: 6
    آخرین پست: چهارشنبه 02 بهمن 1392, 10:00 صبح

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

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