MySQLデータベースは、SQLステートメントを追加、削除、変更、およびチェックします

データベースを見る

データベースを表示します;データベースを
使用します

データベース名を使用
し、データベースを作成します

CREATEDATABASEデータベース名;
データベースの削除

DROPDATABASEデータベース名;
テーブルの作成

テーブルの作成テーブル名(
列名1タイプ(長さ)[制約]、
列名2タイプ(長さ)[制約]、
……
);
長さの異なる
intタイプ:設定値であっても、アクセス値には影響しませんを超える長さに達していない場合は、格納することもできます。設定された長さに達していない場合は、設定された長さまで自動的にスペースで埋められます。
文字タイプ:不変文字、設定された長さは、の最大長です。現在のフィールドに格納できるデータ。長さを超えるとエラーが報告されます。長さに達しない場合は、スペースを使用して設定長に入力します
varchar:可変文字。設定長は最大長も指定します。現在のフィールドに格納できるデータの長さを超えるとエラーが報告され、長さに達しない場合はスペースで埋められません。実際の長さは可能な限り長くなります。

テーブルを削除する

DROPTABLEテーブル名;
テーブル制約

1.空でない
制約NOTNULL2。デフォルト値の制約DEFAULT'male'3
。一意の制約UNIQUE4
。主キーの制約PRIMARYKEY
ビューテーブルの構造

DESCテーブル名
変更テーブル
変更列名

テーブルテーブル名の変更列名の変更新しい列名タイプ;
列タイプの変更

テーブルテーブル名の変更列名の変更列名の新しいタイプ;
列タイプの変更

テーブルテーブル名の変更列名の変更新しいタイプ;
データクエリ-単一テーブル===

クエリテーブルのすべての情報

select * from table name;
テーブル内の指定された列の情報を照会します

テーブル名から列1、列2を
選択し、ステートメントの実行順序:from—> select

データの重複排除

個別の列を選択...テーブル名から;
スプライシング結果

テーブル名からconcat(列1、列2)を選択します。
演算子の優先順位:
1。乗算と除算の優先順位は加算と減算の優先順位よりも高くなります
。2。同じレベルの操作の順序は左から右です
。3。使用「ブラケット」という表現では、優先操作の順序を強制的に変更できます

テーブル名から列1 [±* /]列2を選択し、
エイリアスを設定します(注:キーワードは省略可能です)

テーブル名からエイリアスとして列を選択;テーブル名から
列エイリアスを選択;
ステートメントの実行順序:from—> select

条件付きクエリ

select column ... from table name where condition;条件の
比較演算子:(等しい:=より大きい:>以上:> =より小さい:<以下:<=等しくない:!=または<>)

ここで、列比較演算子の値。
注:文字列と日付は一重引用符で囲む必要があります。
ステートメントの実行順序:from—> where—> select

論理演算子(and:and or && or:or not:not or!)

where条件1論理演算子条件2;
wherenot条件;
範囲クエリ

where列が条件1と条件2の間にある; //この間隔
リストされている値where列が条件1と条件2の間にない; //条件1と条件2の間にない; //この間隔
ないwhere!(条件1の間の列および条件2); //ここにないことも意味します間隔
コレクションクエリ(列の値が指定されたコレクションにあるかどうかを判断します)

where column in(value 1、value 2); //
のデータはwhere列にない(value 1、value 2)in after in ; // data not in the指定された
valuein in NULL value query (注:列の値はnullであり、クエリには使用できません)

ここで、columnはnullです。//クエリ列にnull値を持つデータ
ファジークエリ
%:0からそれ以上の文字を示します。例:

where列 '%0'; // 0
終わることを意味しますwhere'0 % 'のような列; // 0
始まることを意味しますwhere'%0% 'のような列; //データに0が含まれることを意味します
_:文字を意味します、複数回使用できます。例:

where column like '%0_'; //データの最後の2番目は0
結果の並べ替えです(1つ以上の列に応じたクエリ結果の昇順または降順昇順:asc降順:desc注:中国語のエイリアスソートは使用できません)

where条件の順序by列[asc / desc]
ステートメントの実行順序:from—> where—> select—> order by

ページングクエリ(beginIndex:最初のページからのデータ数を示しますSize:各ページに表示されるデータ数を示します)

ここで、[条件] limit beginIndex、pageSize;
例:ページごとに3つのデータを表示する
最初のページ:SELECT * FROMテーブル名LIMIT0,3 --0,1,2
2番目のページ:SELECT * FROMテーブル名LIMIT3,3- -3,4,5
3ページ目:SELECT * FROMテーブルLIMIT6,3 --6,7,8
4ページ目:SELECT * FROMテーブル名9,3--9,10,11 LIMIT
......
最初7ページ:SELECT * FROMテーブル名LIMIT18,3 --18,19,20

beginIndex式:(現在のページ番号-1)* pageSize

集計関数(データのセットに作用し、データのセットに値を返します)

COUNT:統計結果レコードの数。列が列で列がNullの場合、カウントは値を計算しません
。MAX:統計計算の最大値
MIN:統計計算の最小値
SUM:統計計算の合計
AVG:統計計算
関数の平均グループ化(注:グループ化されたデータをフィルター処理する場合は、haveキーワードを使用する必要があり、条件は、haveの後に書き込まれます)

テーブル名から集計関数を選択します。ここで、[condition] group by列は、グループ化後に条件を持ちます。
ステートメントの実行順序:FROM—> WHERE—> group by ----> Haveing—> SELECT—> ORDER BY

Whereとhaveの違い:
Where:最初に既存のデータをフィルタリングし(データはすでに存在します)、グループ化し、集計で計算します
。Hearing:最初にグループ化し、各グループを計算し、得られた結果に従ってフィルタリングします(データをグループ化します)計算後、filter)
注:haveを使用する場合、エイリアスを使用できます

= Data query-multi-table =
クロス結合:デカルト積とも呼ばれ、クロス結合を使用するとデカルト積が生成されます。
セットA = {a、b}、セットB = {0、1、2}とすると、2つのセットデカルト積のは{(a、0)、(a、1)、(a、2)、(b、0)、(b、1)、(b、2)}です。

select * from table 1、table 2
internal connection:filter empty data(queryは実際には2つのテーブルデータの共通部分です)目的== "直積現象を解き、必要なデータを正しくクエリします

select * from Table 1、Table 2 where Table 1. Field = Table 2. Field; //暗黙の内部結合、where条件を使用してデカルト製品を削除し
ますselect * from Table 1 [inner] join Table 2 on Table 1. Field = Table 2.フィールド; //明示的な内部結合、複数のテーブルの場合は、join ... onの後にいつでもjoin ... onを追加でき、innerキーワードは省略できます。
外部結合:左外部結合、右外部結合、完全外部結合
左外部結合:左側のテーブルがメインで、左側のテーブルのすべてのデータが返されます。右側のテーブルにデータがない場合は、NULLとして表示されます。実際のクエリ結果を参照してください。理解する

select * from Table 1 left [outer] join Table 2 on Table 1. Field = Table 2. Field; // Table 1は左側のテーブル、Table 2は右側のテーブル、outerキーワードは省略可能
右外部結合:the右のテーブル主に、右のテーブルのすべてのデータを返します。左のテーブルにデータがない場合は、NULLとして表示されます。これは、実際のクエリ結果と組み合わせて理解できます。

select * from Table 1 right [outer] join Table 2 on Table 1. Field = Table 2. Field; // Table 1は左側のテーブル、Table 2は右側のテーブル、outerキーワードは省略できます。
完全外部結合:関係するすべてのデータを複数のテーブルに返します。このクエリはMYSQLではサポートされていません。自己結合を理解するためだけです。単一のテーブルは複数テーブルのクエリとして扱われます。率直に言って、テーブルのデータには複数の関係が含まれています。マルチテーブルクエリの構文を使用してクエリを実行するテーブル、エイリアスはクエリプロセスで使用する必要があり、
主に分類データ、州、市、郡の分類データ、権限で使用されます。

テーブル1を選択します。フィールド1、テーブル2。テーブル名からテーブル1としてフィールド2、テーブル名をテーブル2として選択します。ここで、テーブル1。フィールド1 =テーブル2。フィールド2

サブクエリ:あるクエリの結果を別のクエリのオブジェクトと見なすと、率直に言ってSQLステートメントのネストです。

select * from(select * from table name)as alias
select * from where Condition->条件にはクエリステートメントが含まれます
注:1。クエリ結果の仮想テーブルはエイリアスである必要があります
2.フィールドはキーワードと同じです。競合する場合は、フィールドAdd ``を指定する必要があります(Escキーの下、1の左側)
3。仮想結果テーブルのフィールドにエイリアスがある場合は、仮想結果をクエリするときにテーブルエイリアスを使用する必要がありますtable。仮想テーブルフィールドエイリアス

=データを挿入=

テーブル名(フィールド1、フィールド2 ...)の値(値1、値2 ...)に
挿入します注:1。挿入されたテーブルの主キーが自動インクリメントタイプの場合は、 t値を挿入する必要があります
。2。主キーが非自動インクリメントの場合、挿入されるデータは、主キーフィールド
3の空の値を埋める値です。主キーが自動インクリメントに設定されている場合、データ主キーフィールドの最大値から挿入されます

その他の挿入方法:

テーブル名に挿入(フィールド1、フィールド2)値(値1、値2)、(値1、値2); //複数のデータを挿入[MYSQL]
テーブル名に挿入値(値1、値2); //テーブル全体のすべてのフィールドを
挿入するテーブル名に挿入(フィールド)テーブル2からフィールドを選択; //
テーブル名挿入するクエリ結果テーブル2からフィールドを選択; //クエリ結果、テーブル全体を挿入
= modify data =

update table set field = value where condition; //指定されたデータを条件で変更します。それ以外の場合は、テーブル全体を変更します
= delete data =

テーブルから削除wherecondition; //条件で指定されたデータを持つデータを削除します。それ以外の場合は、すべてのテーブルデータを削除します
= data backup =

コマンドラインウィンドウで、オペレーティングシステムのバージョンが高い場合は、管理者モードを使用して以下を
エクスポートます。

mysqldump -u account -p password database name>スクリプトファイルの保存場所
例:mysqldump -uroot -proot jdbcdemo> C:/shop_bak.sql
import:

mysql -u account -p password database name <スクリプトファイルストレージアドレス
例:mysql -uroot -proot jdbcdemo <C:/shop_bak.sql
ビジュアルインポートとエクスポートの使用:
Navicatツールのインポートとエクスポート/ Navicatツールのバックアップと復元

=データインデックス=インデックス
の機能は本のカタログと同等であり、カタログのページ番号に応じて必要なコンテンツをすばやく見つけることができます。

インデックス作成に適した列はどれですか?
1.テーブルの主キーと外部キーにはインデックスが必要です
。2。30,000を超えるデータを持つ
テーブルにはインデックスが必要です。3。他のテーブルに接続されることが多いテーブルの場合は、接続フィールドにインデックスを確立する必要があります。
4. Where subに頻繁に表示されます。文のフィールド、特に大きなテーブルのフィールドには
インデックスを付ける必要があります。5。インデックスは選択性の高いフィールドに作成する必要があります。6
。インデックスは小さなフィールドに作成する必要があります。大きなテキストの場合フィールドまたは長いフィールドでさえ、インデックスを付けないでください

インデックスを作成および削除するSQLステートメント:インデックスを
作成します。

CREATE INDEXインデックス名ONテーブル名(列名)
インデックスの削除:
メソッド1:

DROP INDEXインデックス名ONテーブル名
方法2:

ALTERTABLEテーブル名DROPINDEXインデックス名

おすすめ

転載: blog.csdn.net/shiguanggege/article/details/113791367