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

نام تاپیک: بدست آوردن اعداد ثبت نشده بین دوعدد

  1. #1

    بدست آوردن اعداد ثبت نشده بین دوعدد

    سلام
    فرض کنیم یک ستون داریم که داخل آن اعداد1تا1000 را ثبت می کنیم و در این بین چند عدد(100و350و470و..)ثبت نشده است چگونه می توانم این اعداد را بدست آورم


  2. #2

    نقل قول: بدست آوردن اعداد ثبت نشده بین دوعدد

    در شرط توسط between بررسی کنید مقدار عدد بین 1 تا 1000 باشد و از not in هم برای عدم وجود میتونید استفاده کنید.

  3. #3

    نقل قول: بدست آوردن اعداد ثبت نشده بین دوعدد

    مورد 1:
    اگه بخواهیم اولین عدد در بازه ی اعداد ثبت نشده رو بدست بیاریم:
    select nbr+1from numbers n1
    where not exists
    (select *
    from numbers n2
    where n2.nbr = n1.nbr+1);


    مورد 2:
    اگه بخواهیم بازه ی اعداد ثبت نشده رو بدست بیاریم:
    with temp as(
    select *, row_number() over(order by nbr) as rnk
    from numbers
    )
    select t1.nbr as begin_interval, t2.nbr as end_interval
    from temp t1
    join temp t2
    on t1.rnk = t2.rnk - 1
    and t1.nbr < t2.nbr - 1


    مورد 3:
    اگه بخواهیم لیست اعداد ثبت نشده رو بدست بیاریم. نیاز به یه جدول کمکی داریم که 1000 تا سطرداره از اعداد 1 تا 1000
    من اسم این جدول رو میذارم temp و جدول اصلی رو number
    کافیه از هم کمشون کنیم
    select * from temp
    except
    select * from numbers

  4. #4
    کاربر دائمی
    تاریخ عضویت
    دی 1387
    محل زندگی
    اهواز
    پست
    924

    نقل قول: بدست آوردن اعداد ثبت نشده بین دوعدد

    با تشکر
    در مورد 2 کد را اینطور تغییر دادم
    qryGorohShoSanadJadid.Close;
    qryGorohShoSanadJadid.SQL.Clear;
    qryGorohShoSanadJadid.SQL.Add('with temp as(');
    qryGorohShoSanadJadid.SQL.Add('select *, row_number() over(order by Sanad) as rnk');
    qryGorohShoSanadJadid.SQL.Add('FROM '+strSal+')');
    qryGorohShoSanadJadid.SQL.Add('select t1.Sanad as begin_interval,t2.Sanad as end_interval');
    qryGorohShoSanadJadid.SQL.Add('from temp t1');
    qryGorohShoSanadJadid.SQL.Add('join temp t2');
    qryGorohShoSanadJadid.SQL.Add('on t1.rnk = t2.rnk - 1');
    qryGorohShoSanadJadid.SQL.Add('and t1.Sanad < t2.Sanad - 1');
    qryGorohShoSanadJadid.Open ;

    و پیام خطا زیر نمایش داده شد
    Untitled.png

  5. #5

    نقل قول: بدست آوردن اعداد ثبت نشده بین دوعدد

    نمیدونم والا

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

  1. بدست آوردن اعداد ثبت نشده مابین دو عدد
    نوشته شده توسط Iran58 در بخش T-SQL
    پاسخ: 2
    آخرین پست: یک شنبه 05 مهر 1394, 07:06 صبح
  2. پاسخ: 10
    آخرین پست: جمعه 06 مرداد 1391, 23:29 عصر
  3. سوال: بدست آوردن اعداد ممیزی
    نوشته شده توسط Tarragon در بخش PHP
    پاسخ: 1
    آخرین پست: یک شنبه 04 تیر 1391, 18:14 عصر
  4. مبتدی: بدست آوردن كوچكترين عدد از بين 5 عدد
    نوشته شده توسط hessam abjam در بخش برنامه نویسی اسمبلی خانواده x86
    پاسخ: 5
    آخرین پست: دوشنبه 26 مهر 1389, 20:30 عصر
  5. حرفه ای: بدست اوردن اعداد حذف شده
    نوشته شده توسط Delphi&Kylix_2939 در بخش SQL Server
    پاسخ: 1
    آخرین پست: شنبه 14 آذر 1388, 04:37 صبح

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

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