ترتيب القيم في بيان GROUP_CONCAT
في MySQL، تجمع GROUP_CONCAT القيم من عمود واحد بناءً على مجموعة محددة. ومع ذلك، يتم عادةً تحديد ترتيب القيم المتسلسلة حسب الترتيب الذي يحدث به التجميع. للتحكم في فرز هذه القيم، مطلوب بناء جملة محدد.
لفرز القيم المتسلسلة في عبارة GROUP_CONCAT، استخدم عبارة ORDER BY داخل الاستعلام المتداخل. على سبيل المثال، خذ بعين الاعتبار الاستعلام التالي:
GROUP_CONCAT((SELECT GROUP_CONCAT(parent.name SEPARATOR " » ") FROM test_competence AS node, test_competence AS parent WHERE node.lft BETWEEN parent.lft AND parent.rgt AND node.id = l.competence AND parent.id != 1 ORDER BY parent.lft) SEPARATOR "<br />\n") AS competences
لفرز قيم الكفاءة المتسلسلة بترتيب تصاعدي، قم بتعديل الاستعلام كما يلي:
GROUP_CONCAT((SELECT GROUP_CONCAT(parent.name SEPARATOR " » ") FROM test_competence AS node, test_competence AS parent WHERE node.lft BETWEEN parent.lft AND parent.rgt AND node.id = l.competence AND parent.id != 1 ORDER BY parent.lft ASC) SEPARATOR "<br />\n") AS competences
وبالمثل، لفرز القيم بترتيب تنازلي، استخدم الكلمة الأساسية DESC بعد ASC:
GROUP_CONCAT((SELECT GROUP_CONCAT(parent.name SEPARATOR " » ") FROM test_competence AS node, test_competence AS parent WHERE node.lft BETWEEN parent.lft AND parent.rgt AND node.id = l.competence AND parent.id != 1 ORDER BY parent.lft DESC) SEPARATOR "<br />\n") AS competences
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3