"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية تحديد البيانات من جدول MySQL باستخدام مجموعة من القيم في حقل معين؟

كيفية تحديد البيانات من جدول MySQL باستخدام مجموعة من القيم في حقل معين؟

تم النشر بتاريخ 2024-11-16
تصفح:846

 How to Select Data from a MySQL Table Using an Array of Values in a Specific Field?

الاختيار من جدول MySQL مع مجموعة من القيم في حقل معين

عند العمل مع قواعد بيانات MySQL، قد تواجه سيناريوهات تحتاج إليها لاسترداد البيانات بناءً على القيم المخزنة في المصفوفة. على سبيل المثال، لنفترض أن لديك مصفوفة باسم $array تحتوي على قائمة بمعرفات المستخدمين:

$array = array(1, 40, 20, 55, 29, 48);

إلى حدد صفوفًا محددة حيث يتطابق عمود myField مع القيم الموجودة في هذه المصفوفة، ويمكنك تقليديًا استخدام حلقة لإنشاء عبارة "WHERE -- OR -- OR -- OR" معقدة. ومع ذلك، هناك طريقة أبسط وأكثر كفاءة.

استخدام عامل التشغيل "IN"

يوفر مشغل MySQL "IN" حلاً أنيقًا لمثل هذه السيناريوهات. يسمح لك بتحديد قيم متعددة في جملة WHERE باستخدام عبارة واحدة:

$sql = "SELECT * FROM `myTable` WHERE `myField` IN (" . implode(",", $array) . ")";

في هذا المثال، يضمن عامل التشغيل "IN" أن يسترد الاستعلام الصفوف التي يتطابق فيها عمود myField مع أي من القيم المخزنة في المصفوفة $. يتم استخدام الدالة implode() لتحويل المصفوفة إلى سلسلة مفصولة بفاصلة، والتي يتم بعد ذلك ربطها داخل استعلام SQL. الاستعلام باستخدام عامل التشغيل "IN"، يمكنك اتباع الخطوات التالية:

الاتصال بقاعدة بيانات MySQL باستخدام بيانات اعتماد اتصال قاعدة البيانات المناسبة.

قم بإعداد عبارة SQL كما هو موضح في المثال أعلاه.

تنفيذ الاستعلام باستخدام العبارة المعدة.
  1. استرجاع البيانات الناتجة ومعالجتها حسب الحاجة.
  2. باستخدام عامل التشغيل "IN"، فإنك يمكنه تحديد صفوف من جدول MySQL بكفاءة استنادًا إلى قيم متعددة مخزنة في مصفوفة، مما يقلل الحاجة إلى آليات تكرار معقدة وأبطأ.
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3