MySql初心者入門の基本操作まとめ


ライブラリの操作
クエリー
1.SHOW DATABASE、----すべてのデータベースを検索
2.SHOW CREATE DATABASEデータベース名、----データベースの作成モードをクエリー
3.SHOW CREATE DATABASE xxx、----xxxデータベースの作成モードを検索します。
作成
1.REATE DATABASEデータベース名データベースの作成
注:既存のデータベースを作成してはいけません。
2.CREATE DATABASE IS NOT EXISTSデータベース名;----データベースが存在するかどうかを判断します。存在しないなら作成します。
3.CREATE DATABASEデータベース名CHARACT SET文字セット名;データベースを作成して文字セットを指定します。一般的にはutf-8を使用します。
変更
ALTER DATABASEデータベース名CHARACER SET文字セット名データベースの文字セットを変更します。
削除
1.DROP DATABASEデータベース名、----データベースを削除
2.DROP DATABASE IS EXISTSデータベース名、----存在するかどうかを判断してから削除します。
使用
SELETE DATABASE()----現在使用中のデータベースを照会します。
USEデータベース名;----指定されたデータベースを使う
テーブル構造
テーブルのクエリー
1.SHOW TABLES、----データベース内のすべてのテーブルを検索します。
2.DESC表名、----指定されたテーブルの構造を表示します。
3.SHOW TABLE STATURS FROM倉庫名LIKE‘表名’;クエリーテーブルの文字セット(likeは特にない場合と「=」は等価です)
テーブルを作成
CREATE TABLE表名(
列名1データタイプ1制約、
列名2データタイプ2制約、

列名nデータタイプn制約
)0
int:整数の種類
  • age int
  • double:小数の種類
  • score double(5,2)
  • price double
  • date:日付は、年月日yyy-M-ddのみを含みます。
    datetime:日付、年月日を含む時分秒yy-M-dd HH:mm:ss
    timestamp:タイムスタンプの種類は、年月日時の分秒yyy-M-dd HH:mm:ssを含みます。
  • このフィールドに将来値を与えない場合、またはnullに値を割り当てない場合、デフォルトでは現在のシステム時間を使用して、自動的に値を割り当てます。
  • varrhar:文字列
  • name varhar(20):名前最大20文字
  • zhangsan 8文字テンソル3文字
  • CREATE TABLEが作成するテーブル名LIKEがコピーされたテーブル名。表を複製する
    表の変更
    1.ALTER TABLE表名RENAME TO新しい表名;表の名前を変更
    2.ALTER TABLE表名CHARACER SET文字集名称、----表の文字セットを変更します。
    **3.**ALTER TABLE表名ADD列名データタイプ;新しい列を追加します
    4.ALTER TABLE表名MODIFY列名新列名データタイプ;新しい列名とデータの種類を変更します。
    テーブルの削除操作
    1.DROP TABLE表名、----テーブルを削除
    2.ALTER TABLE表名DROP列名、----列を削除
    表にデータを追加する-INSERT文
    1.INSERT INTOテーブル名(列名1、列名2、…)VALES(値1、値2、…);表にそえる
    データを追加
    2.SELECT*FROM product;----すべてのデータを表示します。
    3.INSERT INTOテーブル名VULES(値1、値2、値3、…);デフォルトではすべての列にデータを追加します。
    4.INSERT INTOテーブル名VULES(値1、値2、値3、…)、(値1、値2、値3、…)、(値1、値2、値3、…);一括追加データ
    注:
  • 列名と値の数、およびデータタイプは
  • に対応します。
  • 数字タイプを除いて、他のデータタイプのデータには引用符が必要です。
  • 表の修正データ-udata
    UPDATE表名SET列名1=値1、列名2=値2、...[where条件]
    注:
  • 修正文に条件を付けなければなりません。条件を付けないとすべてのデータが修正されます。
  • テーブルからデータを削除→delete
    DELETE FROM表名[WHERE条件]
    注:
  • は修正データと同じです。
  • 単一テーブルクエリ
    クエリー文法:
    selectフィールドリストfromテーブル名リストwhere条件リストgroup byパケットフィールドhavingパケットの後の条件order by順序limit改ページ限定
    SELECT列名1、列名2、…FROM表名;複数のフィールドクエリ
    SELECT DISTINCT列名1、列名2、…FROM表名;再検索に行きますが、お問い合わせの列が重複しているだけです。
    SELECT列名1演算子(+-*/)列名2 FROM表名;四則演算
    SELECT列名1、列名2、…ASの別名FROM表名;asは別名でわかりやすいです。
    条件クエリー
    条件分類
    記号
    機能
    >
    大きい
    <>
    以下
    >=
    大なりイコール
    <=
    以下
    を選択します。
    等しい
    <>==
    等しくない
    BETWEEN…AND…
    ある範囲(全部含む)
    IN(…)
    もう一つ選ぶ
    LIKEプレースホルダ
    あいまい検索任意の文字%以上の任意の文字
    IS NULL
    NULLです
    IS NOT NULL
    NULLではありません
    ANDか&&&
    そして
    ORまたは124
    または
    NOTか
    いいえ、ちがいます
    集計関数
    関数名とその機能
    関数名
    機能
    count(列名)
    統計数量(一般的にはnullではない列を選択)
    max(列名)
    最大値
    min(列名)
    最小値
    sum(列名)
    和を乞う
    avg(列名)
    平均値
    集計関数文法
    
    --     
    SELECT    (  ) FROM    [WHERE   ];
    
    --   product       
    SELECT COUNT(*) FROM product;
    
    --       
    SELECT MAX(price) FROM product;
    --            
    SELECT NAME,price FROM product WHERE price = (SELECT MAX(price) FROM product);
    
    --       
    SELECT MIN(stock) FROM product;
    --            
    SELECT NAME,stock FROM product WHERE stock = (SELECT MIN(stock) FROM product);
    
    --        
    SELECT SUM(stock) FROM product;
    --              
    SELECT SUM(stock) FROM product WHERE brand='  ';
    
    --               
    SELECT AVG(price) FROM product WHERE brand='  ';
    
    クエリーの並べ替え
    カテゴリ
    キーワード
    機能
    ORDER BY列名1ソート方式1、列名2ソート方式2
    指定された列の並べ替え、ASC昇順(デフォルト)DESC降順
    -注:複数の並べ替え条件の場合、現在の辺の条件値が同じであれば、第二条件が判断されます。
    並べ替え文法
    
    --     
    SELECT    FROM    [WHERE   ] ORDER BY   1     1,  2     2;
    
    --         
    SELECT * FROM product ORDER BY stock ASC;
    
    グループクエリ
    
    --     
    SELECT    FROM    [WHERE   ] GROUP BY      [HAVING        ] [ORDER BY          ];
    
    ページ別に照会する
    
    --     
    SELECT    FROM    [WHERE   ] GROUP BY      [HAVING        ] [ORDER BY          ] LIMIT     ,    ;
    --   :     = (    -1) *        
    
    制約
    1.制約の概念と分類
    制約の概念
  • テーブルのデータを限定して、データの正確性、有効性、完全性を保証します。
  • 制約の分類
    制約
    説明
    PRIMARY KEY
    キー制約
    PRIMARY KEY AUTO_INCREMENT
    メインキー、自動成長
    UNIQUE
    一意の制約
    NOT NULL
    非空制約
    FOREGN KEY
    外部結合の制約
    FOREIGN KEY ON UPDATCASCADE
    外連結の更新
    FOREGN KEY ON DELETE CASCADE
    外キーカスケードの削除
    2.メインキー制約
    主結合制約の特徴
  • キー制約は、非空と唯一の2つの機能
  • を含む。
  • テーブルは一つの列だけがメインキー
  • として機能します。
  • キーは、テーブル内のデータの一意の識別に一般的に使用されます。
  • 表を作る時に、メインキー制約を追加します。
    
    --     
    CREATE TABLE   (
    	        PRIMARY KEY,
               ,
        ...
    );
    
    --   student 
    CREATE TABLE student(
    	id INT PRIMARY KEY  --  id      
    );
    
    --     
    INSERT INTO student VALUES (1),(2);
    --       ,      ,   
    INSERT INTO student VALUES (2);
    --       ,    null   
    INSERT INTO student VALUES (NULL);
    
    --   student 
    SELECT * FROM student;
    --   student   
    DESC student;
    
    メインキーを削除
    
    --     
    ALTER TABLE    DROP PRIMARY KEY;
    
    --     
    ALTER TABLE student DROP PRIMARY KEY;
    
    表を作ってから単独でメインキーを追加します。
    
    --     
    ALTER TABLE    MODIFY         PRIMARY KEY;
    
    --     
    ALTER TABLE student MODIFY id INT PRIMARY KEY;
    
    3.メインキーの自動成長制約
    表を作る時、メインキーを追加してから制約を増加します。
    
    --     
    CREATE TABLE   (
    	        PRIMARY KEY AUTO_INCREMENT,
               ,
        ...
    );
    
    --   student2 
    CREATE TABLE student2(
    	id INT PRIMARY KEY AUTO_INCREMENT    --  id        
    );
    
    --     
    INSERT INTO student2 VALUES (1),(2);
    --   null ,     
    INSERT INTO student2 VALUES (NULL),(NULL);
    
    --   student2 
    SELECT * FROM student2;
    -- student2   
    DESC student2;
    
    自動成長を削除
    
    --     
    ALTER TABLE    MODIFY        ;
    
    --       
    ALTER TABLE student2 MODIFY id INT;
    
    表を作って単独で自動成長を追加します。
    
    --     
    ALTER TABLE    MODIFY         AUTO_INCREMENT;
    
    --       
    ALTER TABLE student2 MODIFY id INT AUTO_INCREMENT;
    
    4.一意制約
    表を作る時に一意の制約を追加します。
    
    --     
    CREATE TABLE   (
    	        UNIQUE,
               ,
        ...
    );
    
    --   student3 
    CREATE TABLE student3(
    	id INT PRIMARY KEY AUTO_INCREMENT,
    	tel VARCHAR(20) UNIQUE    --  tel       
    );
    
    --     
    INSERT INTO student3 VALUES (NULL,'18888888888'),(NULL,'18666666666');
    --       ,   
    INSERT INTO student3 VALUES (NULL,'18666666666');
    
    --   student3   
    SELECT * FROM student3;
    -- student3   
    DESC student3;
    
    一意の制約を削除
    
    --     
    ALTER TABLE    DROP INDEX   ;
    
    --       
    ALTER TABLE student3 DROP INDEX tel;
    
    表を作成して単独で一意の制約を追加します。
    
    --     
    ALTER TABLE    MODIFY         UNIQUE;
    
    --       
    ALTER TABLE student3 MODIFY tel VARCHAR(20) UNIQUE;
    
    5.非空制約
    表を作る時に空の制約を追加します。
    
    --     
    CREATE TABLE   (
    	        NOT NULL,
               ,
        ...
    );
    
    --   student4 
    CREATE TABLE student4(
    	id INT PRIMARY KEY AUTO_INCREMENT,
    	NAME VARCHAR(20) NOT NULL    --  name      
    );
    
    --     
    INSERT INTO student4 VALUES (NULL,'  '),(NULL,'  ');
    --   null ,   
    INSERT INTO student4 VALUES (NULL,NULL);
    
    非空制約を削除
    
    --     
    ALTER TABLE    MODIFY        ;
    
    --       
    ALTER TABLE student4 MODIFY NAME VARCHAR(20);
    
    表を作成して単独で空の制約を追加します。
    
     --     
     ALTER TABLE    MODIFY         NOT NULL
     
     --       
     ALTER TABLE student4 MODIFY NAME VARCHAR(20) NOT NULL;
    
    外部結合の制約
    外部キー制約の書式(一般的には作成表の最後にこれらを書きます。)
    CONSTRAINT外部キー名FOREEGN KEY(本表の外部キー列名)REFERENCESマスタテーブル名(メインテーブルキー列名)
    締め括りをつける
    ここで、MySql初心者入門の基本操作についてまとめた文章を紹介します。MySql基本操作の内容については、以前の文章を検索したり、次の関連記事を見たりしてください。これからもよろしくお願いします。