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 ページのウォーターフォール レイアウトを実装する方法

推薦する

シェルスクリプトによるDockerコンテナの起動順序の制御の詳細な説明

1. 遭遇した問題分散プロジェクトの展開プロセスでは、サーバーの再起動後にアプリケーション(データベ...

インライン要素とブロック要素とは何ですか?

1. インライン要素はコンテンツの幅のみを占めますが、ブロック要素はコンテンツの量に関係なく行全体を...

Linux の総合システム監視ツール dstat の詳細な例

オールラウンドなシステム監視ツール dstat dstat は、vmstat、iostat、nets...

MySQLのMVCCマルチバージョン同時実行制御の実装

1 MVCCとは何かMVCC の正式名称は、マルチバージョン同時実行制御です。データベースへの同時ア...

解決策 - BASH: /HOME/JAVA/JDK1.8.0_221/BIN/JAVA: 権限が不十分です

1) jdkファイルが保存されているフォルダパスを入力します私はここにいますusr/local/jd...

Vue カードスタイルのクリックして切り替える画像コンポーネントの使用方法の詳細な説明

この記事では、vueカードスタイルのクリックして切り替える画像コンポーネントを参考までに紹介します。...

ウェブページのアクセス速度に関する主な問題と解決策

<br />ウェブサイトのアクセス速度はウェブサイトのトラフィックに直接影響を及ぼし、ウ...

MySQL でレプリケーション フィルターを動的に変更する方法

MySQLはレプリケーションフィルターを動的に変更します今日遭遇した問題についてお話しします。今日は...

Alibaba Cloud Serverにプログラムをデプロイし、ドメイン名を使用して直接アクセスする方法の詳細な説明

何もすることがなかったので、学習用に最も安いAlibaba Cloudサーバーを購入しました。年間3...

CSS を使用して複数の方法で下揃えを実装するサンプル コード

会社のビジネス要件により、次の図の赤い領域の効果を達成する必要があります。 効果の説明: 1. 赤い...

JS でタブ効果を書く

この記事の例では、タブ効果を記述するためのJSの具体的なコードを参考までに共有しています。具体的な内...

MySQL 8.0.17 インストール グラフィック チュートリアル

この記事では、参考までにMySQL 8.0.17のインストールグラフィックチュートリアルを紹介します...

Linux システムで grub.cfg ファイルの破損を修復する手順

目次1. grub.cfg ファイルの紹介1. grub.cfg ファイルの場所2. grub.cf...

Linux Tensorflow2.0のインストール問題を解決する

conda アップデート conda pip で tf-nightly-gpu-2.0-previ...

HTML_PowerNode 入門 Java アカデミー

HTMLとは何ですか? HTML は Web ページを記述するために使用される言語です。 HTML ...