本質的に、この出力は、各企業の名前の操作とページの組み合わせに基づいてデータを分類する視点テーブルを表しています。
公司名称 | 操作 | 页数 |
---|---|---|
公司A | 打印 | 3 |
公司A | 打印 | 2 |
公司A | 打印 | 3 |
公司B | 邮件 | NULL |
公司B | 打印 | 2 |
公司B | 打印 | 2 |
公司B | 打印 | 1 |
公司A | 打印 | 3 |
公司名称 | 邮件 | 打印1页 | 打印2页 | 打印3页 |
---|---|---|---|---|
公司A | 0 | 0 | 1 | 3 |
公司B | 1 | 1 | 2 | 0 |
グループを使用して、会社名に従ってデータを分類するために
caseを使用できます。 以下は、提供されているSQLステートメントの例です。
このクエリは、出力に必要なパースペクティブ形式です。重要な説明 より多くの操作/ページを備えたより大きなテーブルの場合、SQLステートメントには、より多くの
ケース条件が必要になります。
<code class="language-sql">SELECT P.`company_name`, COUNT( CASE WHEN P.`action`='EMAIL' THEN 1 ELSE NULL END ) AS 'EMAIL', COUNT( CASE WHEN P.`action`='PRINT' AND P.`pagecount` = '1' THEN P.`pagecount` ELSE NULL END ) AS 'PRINT 1 pages', COUNT( CASE WHEN P.`action`='PRINT' AND P.`pagecount` = '2' THEN P.`pagecount` ELSE NULL END ) AS 'PRINT 2 pages', COUNT( CASE WHEN P.`action`='PRINT' AND P.`pagecount` = '3' THEN P.`pagecount` ELSE NULL END ) AS 'PRINT 3 pages' FROM test_pivot P GROUP BY P.`company_name`;</code>
以上がMySQL クエリを使用してピボット テーブル出力を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。