MySQL ビューの原理と基本操作例

MySQL ビューの原理と基本操作例

この記事では、例を使用して、MySQL ビューの原理と基本操作を説明します。ご参考までに、詳細は以下の通りです。

概要

ビューは、クエリによって内容が定義される仮想テーブルです。実際のテーブルと同様に、ビューは名前付きの列とデータ行のセットで構成されます。ただし、ビューはデータベースに格納されたデータ値のセットとしては存在しません。行と列のデータは、ビューを定義するクエリによって参照されるテーブルから取得され、ビューが参照されたときに動的に生成されます。

ビューは、その中で参照される基になるテーブルに対するフィルターのように機能します。

基本操作

ビューを作成する

ビュー view_test(qty,price,total) を作成します。数量、価格、数量*価格 FROM t として選択します。

マルチテーブルビュー

ビュー stu_class(id,name,glass) を作成します。AS SELECT student.s_id,student.name,stu_info.glass FROM student,stu_info WHERE student.s_id = stu_info.s_id;

表示 表示

DESCRIBE 視圖名

DESC 視圖名

基本情報を見る

SHOW TABLE STATUS LIKE 'ビュー名';

ビューのテーブル作成情報を表示する

SHOWCREATE VIEW ビュー名

VIEWテーブルでビューの詳細を表示する

すべてのビュー定義はMySQLのinformation_schemaデータベースのviewsテーブルに保存されており、 selectで表示できます。

information_schema.views から * を選択します。

ビューを変更する

REPLACE ステートメント

ビュー view_test を SELECT * FROM t として作成または置き換えます。

ALTER ステートメント

ALTER VIEW view_test SELECT name FROM t;

ビューの削除

存在する場合はビューを削除 stu_glass

テーブルの作成例

/*システムの組織構造を取得します* ユーザー名、ユーザーID、ストア名、ストアID、作成時間などが含まれます...
 */
v9_qd_account から、select id、storename、regdate として organizationTableView ビューを作成します。

/*その日の Cpz インストール データを取得します (ユーザー グループごとに集計)
 *ユーザーID、Cpzサマリー値などを含む...
 */
CREATE VIEW TodayCpzTableView as select storeid,storename,count(id)as total,sum(tui_num)as tui_num from v9_qd_dev where days = DATE_FORMAT(NOW(),'%Y%m%d') group by storeid;

/* 月ごとの Cpz インストール データを取得します (日とユーザー グループ別に集計)
 *日付 (曜日)、ユーザー ID、Cpz サマリー値、CpzApp サマリー値、重複した Cpz サマリー値などが含まれます。
 */
ビュー HistoryCurrentMonthDayView を作成します。select storeid,storename,count(id)as total,sum(tui_num)as tui_num,days from v9_qd_dev where days > DATE_FORMAT(NOW(),'%Y%m') group by storeid,days;

/* 月ごとの Cpz インストール データを取得します (月とユーザー グループ別にまとめられています)
 *日付 (曜日)、ユーザー ID、Cpz サマリー値、CpzApp サマリー値、重複した Cpz サマリー値などが含まれます。
 */
ビュー HistoryMonthTableView を作成します。select storeid,storename,count(id)as total,sum(tui_num)as tui_num, DATE_FORMAT(FROM_UNIXTIME(installdate),'%Y%m') as months from v9_qd_dev group by storeid,months;

/*入力されたIMEIに従ってCpzインストールデータを取得します()
 *IMEI、アカウントID、ストアID、インストール時間、繰り返しインストールかどうか、インストールされているアプリの数、電話機のモデルを含む*/
CREATE VIEW QueryCpzDatumByIMEI を、v9_qd_dev から storeid、storename、verify、tui_num、sn、idfa、imei、devms、installdate として選択します。

//今日 DATE_FORMAT(NOW(),'%Y%m%d');

MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL クエリ スキル」、「MySQL トランザクション操作スキル」、「MySQL ストアド プロシージャ スキル」、「MySQL データベース ロック関連スキルの概要」、および「MySQL 共通関数の概要」

この記事が皆様のMySQLデータベース設計に役立つことを願っています。

以下もご興味があるかもしれません:
  • MySQLのビューとインデックスの使い方と違いの詳細な説明
  • MySql ビュー、トリガー、ストアド プロシージャに関する簡単な説明
  • MySQLにおけるビューの作成(CREATE VIEW)と使用制限の詳しい説明
  • MySQL における単一テーブルと複数テーブル、およびビューと一時テーブルに対する Update と Select の違い
  • mysql 3つのテーブルを接続してビューを作成する
  • MySQL で複数のテーブルにビューを作成する方法
  • MySQL ビューの原則と使用例の概要
  • Python を使用して MySQL ビューのインポートとエクスポートの依存関係の問題を解決する
  • MySQL ビューの原理と使用法の詳細な分析

<<:  Windows Server 2016 AD サーバーをセットアップする手順 (画像とテキスト)

>>:  JS でシンプルなデータ監視を実装する方法

推薦する

react setStateの詳細な説明

目次setState は同期ですか、それとも非同期ですか?カスタム合成イベントと React フック...

dns-prefetch とは何ですか? フロントエンドの最適化: DNS の事前解決によりページ速度が向上します

目次背景1. dns-prefetch とは何ですか? 2. dns-prefetch を設定するに...

Dockerプライベートウェアハウスの構築とインターフェース管理の詳細な説明

1. レジストリについて公式 Docker ハブは、パブリックイメージを管理するのに適した場所です。...

bitronix を使用して MySQL に接続するときの MySQLSyntaxErrorException の解決方法

bitronix を使用して MySQL に接続するときの MySQLSyntaxErrorExce...

startup.bat をダブルクリックすると Tomcat がクラッシュする問題の解決方法の詳細な説明

Tomcat を学習したばかりのプログラマーにとって、これはよくある間違いです。 1. 環境変数の問...

Vue+Elementでページング効果を実現

この記事の例では、ページング効果を実現するためのvue+Elementの具体的なコードを参考までに共...

Nginx リバース プロキシはポート 80 のリクエストを 8080 に転送します

まず、一連の概念を理解しましょう。nginx リバース プロキシとは何でしょうか?リバース プロキシ...

MySQLユーザー権限管理の詳細な説明

目次序文: 1. ユーザー権利の概要2. 実際の権限管理序文:データベースのユーザー権限管理について...

Nginx リバース プロキシと負荷分散の実践

リバースプロキシリバースプロキシとは、プロキシサーバーを介してユーザーのアクセス要求を受信し、ユーザ...

ES6 Promiseの使い方の詳細な説明

目次約束とは何ですか?拒否の使用法キャッチの使い方すべての使用法レースの使用約束とは何ですか? Pr...

MySQL データ分析ストレージエンジンの例の説明

目次1. 事例紹介2. システムのデフォルトのストレージエンジンとデフォルトの文字セットを表示する3...

MySQL サーバー 5.7.20 のインストールと設定方法のグラフィック チュートリアル

この記事ではMySQL 5.7.20のインストールと設定方法を記録し、皆さんと共有します1. MyS...

Javascript のスコープとクロージャの詳細

目次1. 範囲2. スコープチェーン3. 語彙の範囲5. 閉鎖の適用6. クロージャの欠陥7. 閉会...

Zabbix と bat スクリプトを組み合わせて複数のアプリケーションの状態を監視する方法

シナリオシミュレーション:国内企業の中には、重要な業務をサポートするために特定のウィンドウ プログラ...

JavaScript は、マウスがテーブル行を通過するときに色の識別を実装します。

この記事では、マウスがテーブルの行を通過するときにJavaScriptを使用して色ラベルを表示する方...