MySQL を使用して Excel でデータ生成を完了する方法

MySQL を使用して Excel でデータ生成を完了する方法

Excel は、データ分析に最もよく使用されるツールです。この記事では、MySQL と Excel の機能を比較し、MySQL を使用してデータ生成、データ クリーニング、前処理、および Excel で最も一般的なデータ分類、データ フィルタリング、分類サマリー、およびデータ ピボット操作を実行する方法を紹介します。本記事では、パート5、6、7のデータ抽出、データスクリーニング、データ集計と視点の内容を紹介します。

5. データ抽出

5 番目の部分はデータ抽出です。これはデータ分析で最も一般的なタスクでもあります。以下に各機能の使い方を説明します。

列ごとにデータを抽出する

#按列提取SELECT city FROM data1;

行ごとにデータを抽出する

#行で抽出SELECT * FROM data1 WHERE city='beijing';

場所別にデータを抽出する

#位置で抽出 SELECT * FROM data1 LIMIT 2,5;

条件別にデータを抽出する

#条件で抽出して計算 SELECT AVG(price) FROM data1 WHERE city='beijing' AND age<25;

6. データのスクリーニング

6 番目の部分はデータ フィルタリングです。AND、OR、NOT、より大きい、より小さい、等しいという 3 つの条件を使用してデータをフィルタリングし、データをカウントして合計します。 Excel のフィルタリング関数や countifs 関数、sumifs 関数に似ています。

条件(and、or、not)でフィルタリング

Excel データ ディレクトリには、さまざまな条件に従ってデータ テーブルをフィルター処理するために使用される「フィルター」機能が用意されています。 MySQL では、フィルタリング操作を完了するために WHERE が使用され、sum 関数と count 関数は Excel の sumif 関数と countif 関数の機能も実現できます。

#データフィルタリングAND
SELECT * FROM data1 WHERE city='shanghai' AND age>30;

#データフィルタリングIN
SELECT * FROM data1 WHERE city IN ('shanghai','beijing');

#データフィルタリングOR
SELECT * FROM data1 WHERE city='shanghai' OR age>30;

#データフィルタリング(等しくない)
SELECT * FROM data1 WHERE city !='北京';

#データフィルタリング(ファジーフィルタリング)
SELECT * FROM data1 WHERE city LIKE 'bei%';

#フィルタリング後のカウント countif
SELECT COUNT(id) AS id_count FROM data1 WHERE city='shanghai'AND age>30;

#フィルタリング後の合計 sumtif
SELECT SUM(price) AS price FROM data1 WHERE city='beijing' AND age<30;

#フィルタリング後の平均値を求める averageif
SELECT AVG(price) AS avg_price FROM data1 WHERE city !='beijing';

7. データの分類、要約、展望

7 番目の部分は、データを分類して要約することです。Excel では、分類と要約、ピボット データを使用して、特定のディメンションに従ってデータを要約できます。MySQL で使用される主な関数は、GROUP BY と CASE WHEN です。以下では、これら 2 つの機能の使用方法を説明します。

分類

Excel では、データ ディレクトリの下に「小計」機能が用意されており、指定されたフィールドと集計方法に従ってデータ テーブルを集計できます。 MySQL では、対応する操作は GROUP BY を通じて完了し、複数レベルの分類集計をサポートできます。

GROUP BY は分類と集計のための関数です。使い方はとても簡単です。グループ化する列名を指定したり、複数の列名を同時に指定することもできます。GROUP BY は列名の出現順にグループ化します。同時に、グループ化後に集計方法を策定する必要があります。最も一般的な方法は、カウントと合計です。

#単一列分類サマリー SELECT city,COUNT(id) AS id_count FROM data1 GROUP BY city ORDER BY id_count;

#複数の列 SELECT city,colour,ROUND(SUM(price),2) AS id_count FROM data1 GROUP BY city,colour;

ピボット

Excel の挿入ディレクトリには、特定のディメンションに従ってデータ テーブルを要約するための「ピボット テーブル」機能が用意されています。 MySQL には直接的なピボット テーブル機能はありません。しかし、CASE WHEN 関数を使用しても同じ効果が得られます。

ピボット テーブルも、データを分類および要約するためによく使用される方法であり、その機能は GROUP BY よりも強力です。次のコードでは、city が行フィールドとして設定され、colour が列フィールドとして設定され、price が値フィールドとして設定され、価格が計算されます。

#元のデータ テーブルを表示します SELECT * FROM data1;

#CASE WHENを使用してデータをピボットする CREATE VIEW data_Items AS (
 選択
 データ1.都市、
 色 = "A" の場合、価格は A として終了します。
 CASE WHEN colour = "B" THEN price END AS B、
 CASE WHEN colour = "C" THEN price END AS C、
 CASE WHEN colour = "F" THEN price END AS F
 データ1から
);

#結果を表示する SELECT * FROM data_Items;

#フィールドを要約する CREATE VIEW data1_Extended_Pivot AS (
 選択
 市、
 SUM(A) を A として、
 SUM(B) を B として計算すると、
 SUM(C) を C として計算します。
 SUM(F) を F として
 data_Itemsから
 都市別にグループ化
);

#結果を表示する SELECT * FROM data1_Extended_Pivot;

#null値を処理する CREATE VIEW data1_Extended_Pivot_Pretty AS (
 選択 
 市、 
 COALESCE(A, 0) を A として、 
 COALESCE(B, 0) を B として、 
 COALESCE(C, 0) を C として、
 COALESCE(F, 0) を F として
 data1_Extended_Pivot から
);

#ピボット データの結果を表示します SELECT * FROM data1_Extended_Pivot_Pretty;

以下もご興味があるかもしれません:
  • PHP を使用して Excel を MySQL にインポートする方法
  • Excel データを Mysql データベースにインポートする実装コード
  • PHPExcel クラスを使用して Excel インポート MySQL データベース機能を実装する (サンプル コード)
  • PHP は MySQL データを Excel ファイルにエクスポートします (fputcsv)
  • PHP で Excel を MySQL にインポートする
  • MySQL の中国語文字化けの問題を解決し、SQL 文と Excel にエクスポートする方法 [画像とテキスト]

<<:  詳細なLinuxインストールチュートリアル

>>:  JS を使用して Web ページのウォーターフォール レイアウトを実装する方法

推薦する

alpineをベースにdockerfileで作成したクローラーScrapyイメージの実装

1.アルパインイメージをダウンロードする [root@DockerBrian ~]# docker ...

Mysql ALTER TABLE はフィールドを追加するときにテーブルをロックしますか?

目次MySQL 5.6以前MySQL 5.6以降要約する知らせMySQL 5.6以前更新手順元のテー...

一般的なフロントエンドJavaScriptメソッドのカプセル化

目次1. 値を入力し、そのデータ型を返す** 2. アレイ重複排除3. 文字列の重複排除4. ディー...

XHTML+CSS Web ページ作成における美しいスタイルシートの適用

これはかなり前に書かれた記事です。今となっては、その中の考え方は学ぶ価値があるように思えます。jb5...

Saltstack に Zabbix サービスをデプロイする方法を説明します

目次SaltstackがZabbixサービスを導入httpd、mysql、phpをインストールするh...

Vueはスライダードラッグ検証機能の全プロセスを実現します

レンダリング 骨組みを定義し、HTMLとCSSを記述するHTML部分 <テンプレート> ...

Vue2 キューブUI 時間セレクターの詳細な説明

目次序文1. 需要と効果必要効果2. コードの実装index.vue(html)日付方法テスト結果3...

MySQL の FIND_IN_SET() と IN の違いを簡単に分析します

以前、あるプロジェクトでMysql FIND_IN_SET関数を使用したことがありますが、非常に便利...

vuex での mapState の考え方の応用

目次1. マップ方式2. 応用背景:需要開発プロセス中に、一部のインターフェースは、ページに表示する...

node.js チュートリアルの Util モジュールの例の詳細な説明

目次タイプ判定から始める厳格な平等エラーファーストと約束デバッグと出力タイプ判定から始めるJavaS...

Docker-compose ワンクリックデプロイ gitlab 中国語版の方法手順

1. GitLabの紹介Gitlab 公式アドレス: https://about.gitlab.co...

Vue3コンポーネントの開発詳細

目次1. はじめに2. コンポーネント開発1. コンポーネントの構成2. ヘッダーコンポーネントの開...

Windows で複数の MySQL インスタンスを実行する方法

序文Windows では、各インスタンスに適切なパラメータを使用してコマンド ラインから複数の My...

IDEA Maven プロジェクトで Tomcat をデバッグ モードで実行する詳細なチュートリアル

1. pom.xmlに次の依存関係を追加します。 <依存関係> <groupId&...

Dockerfile を使用して Docker でイメージを構築する方法

イメージを構築するこれまで、テストやデモンストレーションにさまざまなイメージを使用しました。多くの場...