[DB] | PRIMARY KEY, INDEX , SELECT (IN, BETWEEN, LIMIT, ORDER BY, LIKE %, GROUP BY, HAVING)


よくわかりません.🌞
エンティティ
INDEX
イニシアチブ

データベースフィーチャー


  • オブジェクト→オブジェクト🌞
    :「オブジェクト」という言葉ではなく、「エンティティ」(Entity)という言葉を使います.

  • タイトのお金を除いて、みんな英語を使います.

  • NULL
    :JAVAでは、NULLはアドレス値がないことを意味します.
    :NULLの値はデータベースにありません.NOT NULLの意味は価値がないわけにはいかない.

  • NULLを許可
    :デフォルトのオプションであるため、TABLEを作成する際にカラムのプロパティを個別に記入する必要はありません.
    :だからNOT NULLは単独で記入する必要があります.
  • 띄어쓰기,に分かれています.

  • SQL文の終了時には;,は使用されません.
  • ==ではなく、=だけです.
  • DDL

  • CREATE, ALTER, DROP
  • SQL
    CREATE TABLE memberTBL (
    	memberID CHAR(8) PRIMARY KEY NOT NULL,
    	memberName CHAR(5) NOT NULL,
    	memberAddress CHAR(20)
    );

    VARCHAR VS CHAR



    PRIMARY KEY ( PK )


  • 1つの欄だけがPKできるわけではない.複数の欄が同時にPKできる.

  • どのテーブルにも一つが必要です.

  • 各レコードの価格を表す.△人の身分証明書番号はPrimaryKeyと言ってもいい.

  • PK以外のすべての値が同じでも、PKは記録を区別します.

  • デフォルトのオプション(設定されているオプションは少なくありません)
    : NOT NULL
    :UNIQUE(重複値は絶対に含めない)
    : INDEX

  • INDEX(インデックス)🌞
    :インデックスは内部ソートされます.
    :調音の核心.
    :ディレクトリを作成します.
    :データを検索するとき、インデックスが整理されている場合は、すぐに見つけることができます.
    :インデックスがない場合は、全検索を行います.
  • p51

  • 日付がTYPEでDATEで終わり

  • makedateは定語ですが、カラム名として使用できる関数です.

  • 関数名はカラム名として使用できますが、使用しないほうがいいです.
  • SQL
    CREATE TABLE productTBL (
    	productName CHAR(4) PRIMARY KEY,
    	cost INT NOT NULL,
    	make_Date DATE,
    	company CHAR(5),
    	amount INT NULL
    );

    DATE | DATETIME | TIME



    INSERT

  • P56
  • SQL
    INSERT INTO producttbl
    ( PRODUCTNAME, COST, MAKE_DATE, COMPANY, AMOUNT )
    VALUES
    ( '컴퓨터', 10, 20170101, '삼성', 17 ),
    ( '세탁기', 20, 20180901, 'LG', 3 ),
    ( '냉장고', 5, 20190201, '대우', 22 );

    SELECT


  • データを利用できます.


  • SELECT(列名):調整列

  • SELECT*:すべての列を選択します.

  • WHERE:調整記録

  • WHEREがない場合は、すべてのレコードを選択します.

  • WHEREには条件があります.→調整条件のレコードのみ選択します.
  • SQL
    SELECT * FROM producttbl;
    
    SELECT COMPANY FROM PRODUCTTBL;
    
    SELECT * FROM producttbl WHERE COMPANY='LG';
    
    SELECT PRODUCTNAME FROM PRODUCTTBL WHERE COMPANY='삼성';
    
    SELECT * FROM producttbl WHERE COST >= 10;
    p28 ~ 30
  • 従業員データベース
  • maria DB → command prompt
  • cd : change directory
  • 表の内容を新しい表にコピー

  • INDEXTBLテーブル
  • を作成する
  • EMPLOYESデータベースのEMPLOYESテーブルから
    FIRST NAME、LAST NAME、HIRE DATE列のデータは、最初から1000位まで.
  • EMPLOYESデータベースのEMPLOYESテーブルから
    FIRST NAME、LAST NAME、およびHIRE DATE列のデータは、最初から1000番目までである.
    新しく生成されたINDEXTBLテーブルにコピーします.
  • SQL
    CREATE TABLE INDEXTBL (
    	FIRST_NAME VARCHAR(14),
    	LAST_NAME VARCHAR(16),
    	HIRE_DATE DATE
    );
    
    SELECT FIRST_NAME, LAST_NAME, HIRE_DATE
    FROM EMPLOYEES.EMPLOYEES
    LIMIT 1000;
    
    INSERT INTO indextbl
    (FIRST_NAME, LAST_NAME, HIRE_DATE)
    SELECT FIRST_NAME, LAST_NAME, HIRE_DATE
    FROM EMPLOYEES.EMPLOYEES
    LIMIT 1000;
    
    SELECT * FROM indextbl;

    EXPLAIN, INDEX

    SQL
    EXPLAIN SELECT * FROM indextbl
    WHERE FIRST_NAME = 'MARY';
    
    CREATE INDEX IDX_INDEXTBL_FIRSTNAME
    ON indextbl(FIRST_NAME);
    
    EXPLAIN SELECT * FROM indextbl
    WHERE FIRST_NAME = 'MARY';
  • CREATE INDEX戦、
  • EXPLAIN TYPE : ALL    回覧する
  • CREATE INDEX後、
    EXPLAIN TYPE : REF    特定項目の調査を行っていないで、スピードは速くて、スピードは速くて
  • P171

    DISTINCT

  • 重複除外

  • USE

  • データベースを選択します.
  • クエリは、
  • で選択されたデータベース内で実行されます.
  • クエリーが実行されているが、例外がある場合は、データベース選択エラーのためであることが多い.

  • 誤って選択したデータベースをキャプチャしてアップロードした場合

    その他


  • DRBではアーキテクチャが非常に重要です🌞

  • DBはスピード戦です.
    データが多ければ多いほど速度が遅くなるからです.

  • データベースのコアはモデリングです.