この記事では、例を使用して、MySQL の継続的な集計の原理と使用方法を説明します。ご参考までに、詳細は以下の通りです。 連続集計は、順序付けられたデータを時間順に集計する操作です。 次の例では、EmpOrders テーブルを使用して、各従業員の毎月の注文数量を保存します。 次のコードを実行して、EmpOrders テーブルを作成し、サンプル データを入力します。 テーブル EmpOrders を作成します ( empid INT NOT NULL、 注文月 DATE NOT NULL、 数量 INT NOT NULL、テスト 主キー (empid,ordermonth) ); order テーブルと orderdetails テーブルをクエリし、各月の注文を EmpOrder テーブルに挿入します。SQL ステートメントは次のとおりです (コツは月ごとにグループ化することです) EmpOrdersに挿入 SELECT a.employeeid,orderdate AS Order date,SUM(quantity) AS qty FROMの注文 INNER JOIN 注文詳細 b ON a.orderid=b.orderid GROUP BY 雇用ID、DATE_FORMAT(注文日、'%Y-m'); 以下はサンプルデータを生成するPHPファイルです <?php $sql = "INSERT INTO emporders SELECT %s,'%s-%02d-01',%s;".'<br />'; $insert_sql = ''; ($empid=1;$empid<=8;$empid++) の場合 { ($year=2009;$year<=2015;$year++) の場合 { ($month=1;$month<=12;$month++) の場合 { 数値 = ランド(20,800); $insert_sql .= sprintf($sql、$empid、$year、$month、$num); } $insert_sql .= '<br />'; } } $insert_sql をエコーします。 以下は従業員注文テーブルEmpOrderのデータの一部です。 以下では、EmpOrders テーブルに基づく、累積、スライド、および年累計の 3 つの継続的な集計の問題について説明します。 MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL クエリ スキル」、「MySQL 共通関数の概要」、「MySQL ログ操作スキル」、「MySQL トランザクション操作スキルの概要」、「MySQL ストアド プロシージャ スキル」、および「MySQL データベース ロック関連スキルの概要」 この記事が皆様のMySQLデータベース設計に役立つことを願っています。 以下もご興味があるかもしれません:
|
<<: jQueryはHTML要素の非表示と表示を実装します
背景最近、リーダーからコンポーネント ライブラリを構築するように依頼があり、プロジェクトで現在使用さ...
前書き: 最近、私はパートナーとチームを組んで .NET Core プロジェクトに取り組む予定です。...
目次序文XA プロトコルMySQL XA で分散トランザクションを実装する方法序文MySQL が単一...
目次1. 基本的なSELECT文1. 指定されたフィールドをクエリする3. エイリアスを設定する4....
目次1. 主キーが存在する2. 主キーはないが、一意のインデックスが存在する3. 共同主キーまたは共...
まず、このブログのケースデモンストレーション テーブルを作成します。 create table a(...
IPSec の概要IPSec (インターネット プロトコル セキュリティ): ネットワーク層と適用さ...
結合では、ネスト ループ結合アルゴリズムが使用されます。ネスト ループ結合には 3 つの種類がありま...
目次レイアウトを作成するCSSスタイルを追加するJavaScript で要素を操作する対象要素を取得...
従来の Linux イメージで作成された ECS クラウド サーバーには、NTP と YUM が設定...
単一のテーブルを削除する: tableName から columnName = value を削除し...
1. 問題Linux 上の mysql5.7 のパスワードを忘れました2. 解決策• ステップ 1:...
目次安定スロットル: 手ぶれ防止: 一定時間内に最後のタスクのみを実行します。スロットル: 一定期間...
目次1. リテラル値でオブジェクトを作成する2. 新しいキャラクターを使ってオブジェクトを作成する3...
質問1:エラーを報告する書き込み方法: GRANT OPTION を使用して、'123123...