「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > MySQL 結果のグループ化: SQL と PHP - どちらのアプローチが最適ですか?

MySQL 結果のグループ化: SQL と PHP - どちらのアプローチが最適ですか?

2024 年 11 月 15 日に公開
ブラウズ:456

 Grouping MySQL Results: SQL vs PHP - Which Approach is Best?

MySQL の結果をフィールド データごとにグループ化する: SQL と PHP のアプローチ

データ管理の領域では、データベースの結果をフィールド データごとにグループ化し、特定の形式で表示します。次の例を考えてみましょう。

例 1:
グループ ID に基づいて名前のリストを整理します:

例 2:
共通のグループ ID に基づいて対応するタイトルと係数値をペアにする:

これらの課題に対処するために、SQL と PHP という 2 つの主要なアプローチが登場します。

SQL アプローチ
]単純なグループ化タスクのために、SQL には組み込み関数が用意されています。最初の例では、以下に示すように、GROUP_CONCAT() を使用して各グループ内の名前を結合できます。

SELECT
  `Group`,
  GROUP_CONCAT(`Name`) AS `names`
FROM YOUR_TABLE
GROUP BY `Group`

PHP アプローチ
より複雑なシナリオの場合、PHP はより高い柔軟性を提供します。 2 番目の例を考えてみましょう。ここでは、タイトルと係数をペアにする必要があります:

// Establish connection
$dbc = new MySQLI(...);

// Execute query
$result = $dbc->query("
  SELECT
    p.`Group` AS `group`,
    a.`title`,
    b.`meta_value` AS `coef`
  FROM prueba AS p
  INNER JOIN table_a AS a
    ON p.`meta_value` = a.`id`
  LEFT JOIN table_b AS b
    ON p.`meta_value` = b.`id`
  GROUP BY p.`Group`
");

// Display in HTML table
echo '';
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3