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

نام تاپیک: بازیابی رکوردهایی از یک جدول را که دارای دو فیلد مشابه

  1. #1

    بازیابی رکوردهایی از یک جدول را که دارای دو فیلد مشابه

    اگر بخواهیم رکوردهایی از یک جدول را که دارای دو فیلد مشابه هستند را بازیابی کنیم به چه صورت می باشد.مثلا دو فیلد نام وتاریخ مشترکی هستند

  2. #2

    نقل قول: بازیابی رکوردهایی از یک جدول را که دارای دو فیلد مشابه

    سلام دوست عزیز،
    بسیار ساده است:

    SELECT * FROM MyTable
    WHERE MyTable.Field1 = MyTable.Field2

    ،/
    I've just started tweeting!
    @Alireza_Maddah

  3. #3

    نقل قول: بازیابی رکوردهایی از یک جدول را که دارای دو فیلد مشابه

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

    SELECT * FROM MyTable
    WHERE MyTable.Field1 = MyTable.Field2
    ،/
    منظورم به این صورت نبود مثال زیر را در نظر بگیر
    akbar-amini-1362
    reza-abasi-1365
    akbar-amini-1370
    میخوام رکورد اولی وآخری بازیابی کنه با توجه به نام ونام خانوادگی

  4. #4

    نقل قول: بازیابی رکوردهایی از یک جدول را که دارای دو فیلد مشابه


    select * from table_
    SELECT *
    FROM table_ AS t1
    WHERE EXISTS (SELECT *
    FROM Table_ AS t2
    WHERE t1.[name]=t2.[name]
    AND t1.family=t2.family
    AND t1.ID <> t2.ID)

    /*
    --INPUT
    id name family
    ----------- ---------- ----------
    1362 akbar amini
    1365 reza abasi
    1370 akbar amini

    --OUTPUT
    id name family
    ----------- ---------- ----------
    1362 akbar amini
    1370 akbar amini
    */
    وبلاگ من (Advanced SQL Querying)

  5. #5

    نقل قول: بازیابی رکوردهایی از یک جدول را که دارای دو فیلد مشابه

    نقل قول نوشته شده توسط msalim مشاهده تاپیک

    select * from table_
    SELECT *
    FROM table_ AS t1
    WHERE EXISTS (SELECT *
    FROM Table_ AS t2
    WHERE t1.[name]=t2.[name]
    AND t1.family=t2.family
    AND t1.ID <> t2.ID)

    /*
    --INPUT
    id name family
    ----------- ---------- ----------
    1362 akbar amini
    1365 reza abasi
    1370 akbar amini

    --OUTPUT
    id name family
    ----------- ---------- ----------
    1362 akbar amini
    1370 akbar amini
    */
    روش دیگه نیست

  6. #6

    نقل قول: بازیابی رکوردهایی از یک جدول را که دارای دو فیلد مشابه

    خواهشا در مورد كاربرد اين كدها تو سي شارپ برام پيام بفرستيد

  7. #7
    کاربر تازه وارد
    تاریخ عضویت
    مهر 1388
    محل زندگی
    مشهد
    سن
    47
    پست
    65

    نقل قول: بازیابی رکوردهایی از یک جدول را که دارای دو فیلد مشابه

    نقل قول نوشته شده توسط akbar_online مشاهده تاپیک
    منظورم به این صورت نبود مثال زیر را در نظر بگیر
    akbar-amini-1362
    reza-abasi-1365
    akbar-amini-1370
    میخوام رکورد اولی وآخری بازیابی کنه با توجه به نام ونام خانوادگی
    SELECT *
    FROM Table1
    WHERE (Name = 'akbar')
    AND (Family='amini')

  8. #8
    کاربر دائمی آواتار Hamid.Kad
    تاریخ عضویت
    آبان 1385
    محل زندگی
    پُشت هیچستانم...
    پست
    349

    نقل قول: بازیابی رکوردهایی از یک جدول را که دارای دو فیلد مشابه

    جناب اسدي ايشون ميخوان ركوردهايي كه اين خاصيت رو دارن انتخاب بشن. نه يك نمونه خاص !
    جواب در پست شماره 4 داده شده . بعنوان راه حل ديگه ميتونيد از join استفاده كنيد كه البته از لحاظ سرعت فرق چنداني با روش ذكر شده نداره

     
    ُSelect * from Table1 t1
    inner join Table1 t2 on t1.[name]=t2.[name]
    and t1.family=t2.family
    and t1.ID <> t2.ID .

  9. #9
    کاربر تازه وارد
    تاریخ عضویت
    مهر 1388
    محل زندگی
    مشهد
    سن
    47
    پست
    65

    نقل قول: بازیابی رکوردهایی از یک جدول را که دارای دو فیلد مشابه

    آره حق با شماست آقا حميد، من سوال رو اشتباه متوجه شدم. جواب هايي كه جناب msalim و شما دادين درسته. البته در روشي كه شما استفاده كردين، هم تعداد ستون هاي خروجي زياد ميشه (تمام فيلدها دوباره تكرار ميشن) و هم سطرهاي تكراري خواهيم داشت. بهتره به جاي * اسم فيلدها رو بذاريم و با استفاده از Distinct رديف هاي تكراري رو حذف كنيم و همچنين از order by براي كنار هم قرار دادن ركوردهاي مشابه استفاده كنيم:

    SELECT DISTINCT t1.id, t1.name, t1.family, t1.tarikh
    FROM Table1 t1 INNER JOIN
    Table1 t2 ON t1.name = t2.name AND t1.family = t2.family AND t1.id <> t2.id
    ORDER BY t1.name, t1.family

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

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