النتائج 1 إلى 11 من 11

الموضوع: كيف يمكن القيام بهذا الاستدعاء مع الشرط WHERE ؟

  1. #1
    عضو نشيط جدا
    تاريخ التسجيل
    Mar 2002
    المشاركات
    426

    كيف يمكن القيام بهذا الاستدعاء مع الشرط WHERE ؟



    الاخوة في شبكة سوالف
    اذا رغبنا بأن يتم استدعاء قيمة معينة في جدول ، بشرط أن تكون مساوية لقيمة في صف آخر في جدول ثانٍ ، فكيف يمكن الاستفادة من الشرط WHERE في هذه الحالة ؟

    مثال
    إذا كنا نستعمل الكود التالي
    SELECT * FROM id1 WHERE id2=id3

    على أن يكون id1 وid2 هما صفان في الجدول الأول ، و id3 هما صفان في الجدول الثاني
    علماً أن الكود في الأعلى هو لتقريب المثال ولا يعمل بشكل صحيح

    وشكراً سلفاً





    __________________
    إستخدم ملفك الخاص لكتابة توقيعك


  2. #2
    عضو فعال جدا
    تاريخ التسجيل
    Dec 2004
    المشاركات
    4,037


    أوكي .. في هذه الحالة نعطي لكل جدول اسما جديدا ع الهوا .. بهذه الطريقة:
    كود PHP:
    SELECT a.id1 theid 
    FROM table1 a
    table2 b 
    WHERE a
    .id2 b.id3 
    خلي بالك id1 الآن لكي تناديه سيكون اسمه كما هو واضح: theid





    __________________
    ....
    محمد حسام
    انترنت بلس

  3. #3
    عضو نشيط جدا
    تاريخ التسجيل
    Mar 2002
    المشاركات
    426


    شكرا للاخ انترنت بلس على مساهمته
    لعل الموضوع بحاجة إلى توضيح لكي نصل إلى النتيجة المطلوبة

    ما أود فعله هو الحصول على مجموع الزيارات في قسم معين
    والكود الذي استخدمه للحصول على مجموع الزيارات في كل البرنامج هو

    <?php
    $query=mysql_query("select sum(visit)from tt1");
    list($total)=mysql_fetch_array($query);
    echo $total;
    ?>

    حيث أن الجدول tt1 يحتوي على صف اسمه visit ويضم عدد الزيارات ، فيتم جمعها بشكل طبيعي

    ولكني أريد الحصول على مجموع الزيارات في قسم معين ، ولدي في نفس الجدول tt1 صف يحتوي على رقم لكل قسم اسمه id
    فاريد ان يظهر المجموع كلما تساوى ال id في الجدول tt1 مع الid في جدول آخر اسمه tt2

    آمل افادتنا بهذا الخصوص
    وشكراً للاخ انترنت بلس





    __________________
    إستخدم ملفك الخاص لكتابة توقيعك

  4. #4
    عضو نشيط جدا
    تاريخ التسجيل
    Mar 2002
    المشاركات
    426


    ملاحظة : إذا كانت طريقة الكود بهذا الشكل غير صحيحة لاستدعاء مجموع الزيارات في قسم معين ، فما هو الكود الذي يمكن استعماله ؟

    وشكراً





    __________________
    إستخدم ملفك الخاص لكتابة توقيعك

  5. #5
    عضو فعال جدا
    تاريخ التسجيل
    Dec 2004
    المشاركات
    4,037


    كود PHP:
    <?php
    $query
    =mysql_query("select sum(visit) visits, b.id bid 
    from tt1 a
    INNER JOIN tt2 b
    ON b.id = a.id
    ORDER BY b.id"
    );
    while(
    $total=mysql_fetch_array($query)){
    echo 
    "<br>" $total['bid'] . ": " $total['visits'];
    }
    ?>
    لو كلامك صحيح المفروض الكود يشتغل معاك إن شاء الله ..





    __________________
    ....
    محمد حسام
    انترنت بلس

  6. #6
    عضو نشيط جدا
    تاريخ التسجيل
    Mar 2002
    المشاركات
    426


    شكراً للاخ انترنت بلس
    وقد قمت بالتعديلات اللازمة ولكن لم يعمل الكود كما يجب
    لا ادري ان كان استعمال الكود في هذا المورد صحيح ام لا
    انا ارغب بان تعرض الاحصائيات الخاصة بكل قسم مثلاً
    الكود الخاص بالاحصائيات الشاملة اعلاه يظهر بشكل طبيعي


    فهل يمكن الإفادة في الكودات التي تستعمل لهذه الخاصية ؟
    وشكراً





    __________________
    إستخدم ملفك الخاص لكتابة توقيعك

  7. #7
    عضو فعال جدا
    تاريخ التسجيل
    Dec 2004
    المشاركات
    4,037


    أخي إذا كان ما تريده هو عدد الزيارات لقسم واحد فقط وعندك رقمه فاستخدم جملة where عادية دون التداخل مع الجدول الآخر حيث لا حاجة لك بذلك ..
    أما إذا كنت تريد ربط الجدولين بحيث تعرض كل قسم باسمه وأمامه عدد الزيارات الخاصة به فالكود الذي كتبته هو لذلك ..





    __________________
    ....
    محمد حسام
    انترنت بلس

  8. #8
    عضو نشيط جدا
    تاريخ التسجيل
    Mar 2002
    المشاركات
    426


    الاخ انترنت بلس
    اتعبتك معي
    نعم ما اريده هو أن يتم ربط الجدولين بحيث تعرض كل قسم باسمه وأمامه عدد الزيارات الخاصة به
    ولكن يبدوا اني كنت قد اشتبهت في عنوان احد الصفوف

    فإني أريد أن يتم جمع الصف visit من الجدول tt1 عندما يتساوى الصف sht من نفس الجدول tt1 مع الصف id من الجدول tt2
    فما هو الذي ينبغي تعديله في الكود أعلاه ؟

    وشكراً





    __________________
    إستخدم ملفك الخاص لكتابة توقيعك

  9. #9
    عضو فعال جدا
    تاريخ التسجيل
    Dec 2004
    المشاركات
    4,037


    عشان كده أنا قلت "لو كلامك صحيح" شوف يا سيدي ..
    <?php
    $query=mysql_query("select sum(visit) visits, b.name section
    from tt1 a
    LEFT JOIN tt2 b
    ON b.id = a.sht
    ORDER BY b.id");
    while($total=mysql_fetch_array($query)){
    echo "<br>" . $total['section'] . ": " . $total['visits'];
    }
    ?>
    غير name إلى اسم الحقل الذي يمثل اسم القسم في الجدول الثاني ..





    __________________
    ....
    محمد حسام
    انترنت بلس

  10. #10
    عضو نشيط جدا
    تاريخ التسجيل
    Mar 2002
    المشاركات
    426


    شكراً للاخ انترنت بلس
    ولكن السكود الأخير لم يعمل أيضاً .. ولا أدري ما هو السبب في ذلك

    ساراجعه لاحقاً إن شاء الله وإن كان لدى أحد من الإخوة إضافة مفيدة في الموضوع فجزاه الله خيراً





    __________________
    إستخدم ملفك الخاص لكتابة توقيعك

  11. #11
    عضو فعال جدا
    تاريخ التسجيل
    Dec 2004
    المشاركات
    4,037


    أضف على تنفيذ الجملة (قبل علامة نهاية الجملة مباشرة):
    or die(mysql_error())
    وأخبرني برسالة الخطأ ماذا تقول ..





    __________________
    ....
    محمد حسام
    انترنت بلس





ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض