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

نام تاپیک: لیست کردن تمام کسانی که حتما این دو قلم جنس را تحویل گرفته اند.

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    کاربر دائمی آواتار mhsmity
    تاریخ عضویت
    مهر 1387
    محل زندگی
    استان يزد
    سن
    36
    پست
    671

    لیست کردن تمام کسانی که حتما این دو قلم جنس را تحویل گرفته اند.

    سلام

    SELECT     tblEqpGet.idmain, tblEqpGet.x1, tblEqp.name
    FROM tblEqpGet INNER JOIN
    tblEqp ON tblEqpGet.ideqp = tblEqp.id
    WHERE (tblEqp.name LIKE N'عینک آفتابی') AND (tblEqp.name LIKE N'عصا')


    میی خوام تمام کسانی که این دو قلم جنس را تحویل گرفتن لیست بشن
    ولی کدها به درستی کار نمی کنه
    ؟

  2. #2
    مدیر بخش آواتار مهرداد صفا
    تاریخ عضویت
    تیر 1391
    محل زندگی
    select Country,City From World where Country.Name=IRAN and City.Contains(حضرت معصومه(ع))
    پست
    1,499

    نقل قول: لیست کردن تمام کسانی که حتما این دو قلم جنس را تحویل گرفته اند.

    سلام دوست من.
    به جای AND از OR استفاده کنید.


    دوستان لطفا این قبیل سوالات که صرفا در مورد T-SQL بوده و ربطی به C#‎ ندارد را در تالار T-SQL مطرح کنید.
    چشم ظاهر گر نبیند عیب نیست چشم دل گر ننگرد باید گریست
    **********
    اَلسَّلامُ عَلَى الْحُسَيْنِ وَ عَلى عَلِىِّ بْنِ الْحُسَيْنِ وَ عَلى اَوْلادِ الْحُسَيْنِ وَ عَلى اَصْحابِ الْحُسَيْنِ

  3. #3
    کاربر دائمی آواتار Davidd
    تاریخ عضویت
    آذر 1392
    محل زندگی
    تهران
    پست
    391

    نقل قول: لیست کردن تمام کسانی که حتما این دو قلم جنس را تحویل گرفته اند.

    كد كار نمي كنه چون توي كوئري كه نوشتين فيلد نام همزمان بايد هم 'عینک آفتابی' باشه و هم 'عصا' كه چنين ركوردي وجود نداره

    نقل قول نوشته شده توسط مهرداد صفا مشاهده تاپیک
    به جای AND از OR استفاده کنید.
    .
    با استفاده از OR ليست افرادي مياد كه يكي از اين دو قلم جنس يا هر دو را با هم گرفتن كه درست نيست.
    فكر كنم شما بايد عملگر تقسيم كه توي جبر رابطه اي داريم با SQL بنويسي (عملگر تقسيم براي كوئري هايي كه شامل "همه" مي شوند مثلا كساني كه همه اين دروس را انتخاب كرده اند). سرچ كني هست.

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

    نقل قول: لیست کردن تمام کسانی که حتما این دو قلم جنس را تحویل گرفته اند.

    نقل قول نوشته شده توسط deldadeh108 مشاهده تاپیک
    كد كار نمي كنه چون توي كوئري كه نوشتين فيلد نام همزمان بايد هم 'عینک آفتابی' باشه و هم 'عصا' كه چنين ركوردي وجود نداره


    با استفاده از OR ليست افرادي مياد كه يكي از اين دو قلم جنس يا هر دو را با هم گرفتن كه درست نيست.
    فكر كنم شما بايد عملگر تقسيم كه توي جبر رابطه اي داريم با SQL بنويسي (عملگر تقسيم براي كوئري هايي كه شامل "همه" مي شوند مثلا كساني كه همه اين دروس را انتخاب كرده اند). سرچ كني هست.
    ای کاش یکم بیشتر توضیح می دادین میشه چندتا مثال از همین "(عملگر تقسيم براي كوئري هايي كه شامل "همه" مي شوند" می زاشتین
    اصلا متوجه نشدم که باید چی رو سرچ کنم.

  5. #5
    کاربر دائمی آواتار mhsmity
    تاریخ عضویت
    مهر 1387
    محل زندگی
    استان يزد
    سن
    36
    پست
    671

    نقل قول: لیست کردن تمام کسانی که حتما این دو قلم جنس را تحویل گرفته اند.

    نقل قول نوشته شده توسط مهرداد صفا مشاهده تاپیک
    سلام دوست من.
    به جای AND از OR استفاده کنید.


    دوستان لطفا این قبیل سوالات که صرفا در مورد T-SQL بوده و ربطی به C#‎‎ ندارد را در تالار T-SQL مطرح کنید.
    سلام نه or کار من رو اصلا راه نمیدازه
    اگه سوال رو یک بار دیگه بخونین متوجه میشن
    تمام کسانی که این دو قلم جنس رو دارند فقط و فقط یک بار نمایشون بده

    بابت تذکر شما هم ممنون چشم
    ولی همه دوستان من تو این بخش هستند و فعالیت دارند گفتم اینجا بپرسم تا زود در به جواب برسم

  6. #6
    مدیر بخش آواتار مهرداد صفا
    تاریخ عضویت
    تیر 1391
    محل زندگی
    select Country,City From World where Country.Name=IRAN and City.Contains(حضرت معصومه(ع))
    پست
    1,499

    نقل قول: لیست کردن تمام کسانی که حتما این دو قلم جنس را تحویل گرفته اند.

    نقل قول نوشته شده توسط mhsmity مشاهده تاپیک
    سلام نه or کار من رو اصلا راه نمیدازه
    اگه سوال رو یک بار دیگه بخونین متوجه میشن
    تمام کسانی که این دو قلم جنس رو دارند فقط و فقط یک بار نمایشون بده

    بابت تذکر شما هم ممنون چشم
    ولی همه دوستان من تو این بخش هستند و فعالیت دارند گفتم اینجا بپرسم تا زود در به جواب برسم

    می تونید از or استفاده کنید و با استفاده از Count رکوردهایی رو انتخاب کنید که شامل هر دو شرط هستند:

    select b.MainID,b.X1 from TblEqpGet b
    join TblEqp a on b.Get_ID=a.ID where
    a.name like N'عینک' or a.name like N'عصا' group by b.MainID,b.x1 having count(B.MainID) =2


    و یا شبیه به این:

    select b.MainID,B.X1
    from TblEqpGet b join TblEqp a
    on b.Get_ID = A.ID
    where (select count(b2.MainID) from TblEqpGet b2 where b2.MainID=b.MainID and (a.Name LIKE N'عینک' or a.name like N'عصا')) =2


    علاوه بر اینکه شما متعهد به اجرای قوانین انجمن هستید در تالار مربوطه زودتر و بهتر به جواب می رسید.
    تشکر از اینکه برای حفظ نظم تالار اهمیت قاعلید.
    چشم ظاهر گر نبیند عیب نیست چشم دل گر ننگرد باید گریست
    **********
    اَلسَّلامُ عَلَى الْحُسَيْنِ وَ عَلى عَلِىِّ بْنِ الْحُسَيْنِ وَ عَلى اَوْلادِ الْحُسَيْنِ وَ عَلى اَصْحابِ الْحُسَيْنِ

  7. #7
    کاربر دائمی آواتار mhsmity
    تاریخ عضویت
    مهر 1387
    محل زندگی
    استان يزد
    سن
    36
    پست
    671

    نقل قول: لیست کردن تمام کسانی که حتما این دو قلم جنس را تحویل گرفته اند.

    نقل قول نوشته شده توسط مهرداد صفا مشاهده تاپیک
    می تونید از or استفاده کنید و با استفاده از Count رکوردهایی رو انتخاب کنید که شامل هر دو شرط هستند:

    select b.MainID,b.X1 from TblEqpGet b
    join TblEqp a on b.Get_ID=a.ID where
    a.name like N'عینک' or a.name like N'عصا' group by b.MainID,b.x1 having count(B.MainID) =2


    و یا شبیه به این:

    select b.MainID,B.X1
    from TblEqpGet b join TblEqp a
    on b.Get_ID = A.ID
    where (select count(b2.MainID) from TblEqpGet b2 where b2.MainID=b.MainID and (a.Name LIKE N'عینک' or a.name like N'عصا')) =2


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

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

    من به این کدها رسیدیم

    SELECT      tblEqpGet.idmain
    FROM tblEqpGet INNER JOIN
    tblEqp ON tblEqpGet.ideqp = tblEqp.id
    WHERE (tblEqp.name LIKE N'عینک آفتابی')
    INTERSECT
    SELECT tblEqpGet.idmain
    FROM tblEqpGet INNER JOIN
    tblEqp ON tblEqpGet.ideqp = tblEqp.id
    WHERE (tblEqp.name LIKE N'عصا')

  8. #8
    مدیر بخش آواتار مهرداد صفا
    تاریخ عضویت
    تیر 1391
    محل زندگی
    select Country,City From World where Country.Name=IRAN and City.Contains(حضرت معصومه(ع))
    پست
    1,499

    نقل قول: لیست کردن تمام کسانی که حتما این دو قلم جنس را تحویل گرفته اند.

    نقل قول نوشته شده توسط mhsmity مشاهده تاپیک
    سلام ممنون بخشید.
    ای به چشم قوانین رو رعایت می کنیم.
    ولی خدایش اون بخش درش تخته هست هیچ گناهی ندارم.



    دستورات بالا که کار نکرد .
    اگر فیلد x1 رو حذف کنید جواب می گیرید. به این صورت امتحان کنید:

    select b.MainID from TblEqpGet b
    join TblEqp a on b.Get_ID=a.ID where
    a.name like N'عینک' or a.name like N'عصا' group by b.MainID having count(B.MainID) =2




    البته باز هم به شرطی که یک نفر دوبار یک جنس رو دریافت نکرده باشه.

    نقل قول نوشته شده توسط mhsmity
    ما نمی توانیم هیچ فیلد اضافه ای از تجهیزات داشته باشیم به غیر از این که دارای نام یکی و تاریخ دریافت و .... مساوی داشته باشیم. به ازای هر سطر که این اصلا امکان ندارد.
    چون عصا تاریخ تحویلش حتما با عینک آفتای فرق داره نمیشه که نام تجهیزات،تاریخ تحویل و ..... را دریک سطر داشته باشیم.
    پس باید نام تجیزات، تاریخ تحویل و ..... رو حذف کرده.
    راه که زیاد هست!! شما بفرمایید: آیا همیشه تعداد فیلدهایی که کوئری می گیرید دو عدد هست؟
    چشم ظاهر گر نبیند عیب نیست چشم دل گر ننگرد باید گریست
    **********
    اَلسَّلامُ عَلَى الْحُسَيْنِ وَ عَلى عَلِىِّ بْنِ الْحُسَيْنِ وَ عَلى اَوْلادِ الْحُسَيْنِ وَ عَلى اَصْحابِ الْحُسَيْنِ

  9. #9
    کاربر دائمی آواتار Davidd
    تاریخ عضویت
    آذر 1392
    محل زندگی
    تهران
    پست
    391

    نقل قول: لیست کردن تمام کسانی که حتما این دو قلم جنس را تحویل گرفته اند.

    سرچ كنيد relational algebra divide in sql

    يه نمونه :
    Division:

    Find items in one set that are related to all of the items in another set. In a many-to-many relationship there are three tables, A, B, C with C as the table representing the many-to-many key pairs of A and B.
    For simple division: What are the 'A_KEY's to which all 'B_KEY's belong?


    select distinct A_KEY
    from TABLE_C C
    where not exists (
    select B_KEY
    from TABLE_B B
    where not exists (
    select *
    from TABLE_C CC
    where A.A_KEY = CC.A_KEY
    and B.B_KEY = CC.B_KEY ))

  10. #10

    نقل قول: لیست کردن تمام کسانی که حتما این دو قلم جنس را تحویل گرفته اند.

    فکر نمیکنم گروهبندی اینجا مفید باشه. حالتی رو فرض کنید که یک شخص دو بار یا بیشتر «عینک» خریده باشه. در این حالت این شخص انتخاب میشه در صورتی که «عصا» نخریده. بهترین روش همون اشتراک گرفتن هست.

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

  1. سوال: لیست کردن تمام فایل های یک درایو در یک لیست باکس...
    نوشته شده توسط tigervb6 در بخش C#‎‎
    پاسخ: 12
    آخرین پست: یک شنبه 15 شهریور 1394, 17:26 عصر
  2. پاسخ: 3
    آخرین پست: یک شنبه 25 تیر 1391, 15:16 عصر
  3. ذخیره کردن همه صفحات مربوط به این بخش (دلفی 7)
    نوشته شده توسط nasr در بخش برنامه نویسی در Delphi
    پاسخ: 12
    آخرین پست: دوشنبه 25 خرداد 1383, 15:47 عصر
  4. قفل کردن تمام پنجره ها و پنجره و منوی اصلی
    نوشته شده توسط rezaTavak در بخش Foxpro
    پاسخ: 3
    آخرین پست: جمعه 18 اردیبهشت 1383, 20:53 عصر
  5. قدردانی از کسانی که در این سایت به شما کمک میکنند و ...
    نوشته شده توسط مهدی کرامتی در بخش گفتگو با مسئولین سایت، درخواست و پیشنهاد
    پاسخ: 32
    آخرین پست: جمعه 14 آذر 1382, 03:48 صبح

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

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