mysql: تحويل صفوف متعددة إلى صف واحد مفصلي بفاصلة
يمكن تحقيق ذلك من خلال استخدام وظيفة group_concat ، كما هو موضح في سيناريو المثال التالي.
مثال سيناريو: يحتوي طاولة الطبق على الهيكل التالي:
طبق: Dish_id dish_name 1 DISH_1 2 DISH_2 3 DISH_3 4 dish_4
DISH: dish_id dish_name 1 dish_1 2 dish_2 3 dish_3 4 dish_4وجبة dish_id 1 2 1 3 1 4
DISH_HAS_DISHES: meal_id dish_id 1 2 1 3 1 4
هدفنا هو تحويل البيانات إلى تنسيق حيث تحتوي كل وجبة على صف مقابل ، وسرد معرفات الطبق والأسماء كقيم مفصولة. الإخراج المطلوب هو: 1 2،3،4 dish_2 ، dish_3 ، dish_4
الحل:
meal_id dish_ids dish_names 1 2,3,4 dish_2, dish_3, dish_4group_concat (dish_id) مثل dish_ids ، group_concat (dish_name) كـ dish_names من dish_has_dishes m انضم إلى طبق d on (m.dish_id = d.dish_id) مجموعة بواسطة Geak_id
في هذا الاستعلام:
الأعمدة. هذه التقنية مفيدة بشكل خاص عند العمل مع البيانات الجدولية وتوحيد المعلومات عبر صفوف متعددة.تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3