Part 8. SQL(詳細SQL)


情報処理エンジニアは第8部を実録する。SQL(詳細SQL)


Section 1. インデックス(INDEX)


1.索引
  • 「必要なデータを迅速に識別するために、カラム値と記録された論理アドレスを独立した記憶構造として保存する」
  • .
  • インデックスファイルは、キー値とアドレスからなる
  • である.
  • プライマリ・キー属性インデックス-プライマリ・インデックス、一般属性インデックス-セカンダリ・インデックス
  • は、複数の属性の組合せを有し、インデックス
  • を構成することができる.
    CREATE [UNIQUE] INDEX 인덱스이름 
    ON 테이블이름 (속성이름 [ASC | DESC])
    [CLUSTER]
    
    ALTER [UNIQUE] INDEX 인덱스 이름
    ON 테이블이름(속성이름 [ASC | DESC]);
    
    DROP INDEX 인덱스이름;
    
    2.索引構造
  • Bツリー、B+ツリー
  • 3.B-ツリー
  • 「データ構造をバランスのとれたツリー構造として表す方法」
  • .
    4.B+ツリー
  • "Bツリーの変形.インデックスセットとシーケンスセットからなる"
  • "
  • インデックスセットは、端末ノードを検索するためのインデックスを提供する、シーケンスセットは、端末ノードのみからなる
  • である.
  • シーケンスセット端末ノードはすべてのキー値を再表示し、
  • を繰り返すことができる.
    5.索引その他のタイプ
  • クラスタインデックス-テーブルの物理的順序とインデックスの順序は同じで、1つの
  • しか作成できません.
  • クラスタインデックス-物理テーブルを再構築せず、
  • をインデックス順に並べ替えます.
    6.インデックススキャン
  • 属性値の一意性-一意/非一意
  • プロパティの数-単一インデックス/結合インデックス
  • Section 2. ビュー(VIEW)とシステムディレクトリ


    1.ビュー(VIEW)
  • "は、実際に存在するテーブルからユーザが必要とする限られたデータを抽出することによって作成された仮想テーブル
  • である.
    CREATE VIEW 뷰이름 [(속성이름)]
    AS SELECT 실제테이블의속성이름
    FROM 실제테이블이름
    [WHERE 조건]
    [WITH CHECK OPTION]; # 뷰에 대한 데이터 조작 연산시 WHERE 조건에 맞지 않으면 실행 X
    
    CREATE VIEW 3학년연락처(학번, 이름, 전화번호)
    AS SELECT 학번, 성명, 연락처
    FROM 학생
    WHERE 학년 = 3;
    
    DROP VIEW 뷰이름 [RESTRICT | CASCADE];
    2.システムディレクトリ
  • 「アーキテクチャおよびデータベース・オブジェクトのすべての情報(メタデータ)を格納するシステム・データベース」
  • 3. UPDATE
    UPDATE 테이블이름
    SET 속성이름 = 변경내용
    [WHERE 조건];
    4. DELETE
    DELETE FROM 테이블이름
    [WHERE 조건];

    Section 3. 複数のテーブルの検索


    1.Join(JOIN)
  • 「2つ以上のテーブルの特定の共通値を持つローを接続または結合することによって検索」
  • .
    2.連結の種類
        ①内部連結-同等連結、自然連結、非同等連結
        ②外部連結-連結条件を満たさない行図表現
        ③セルフサイン-テーブル内でサイン
        ④クロスジョイント-カース乗
    3.同等の署名
    結合する2つのテーブルで、共通列の値が一致する共通行を
  • に接続します.
  • 共通列は
  • を繰り返す.
    SELECT * FROM 학생 S, 학과 D
    WHERE S.학과번호 = D.학과번호;
    4.自然鳥人
  • 「共通列の値をすべての列に一致する共通行に自動的に結合」
  • は、1つの共通列
  • のみを提供する.
    SELECT * FROM 학생 NATURAL [INNER] JOIN 학과;
    5.集合演算子
        ①ユニオン-各集合の和
        ②ユニオンALL-は、各セットの複合結果を含む
        ③INTERSECT-各集合の共通行を返す
        ④MINUS-は、共通行以外の行を返す
    SELECT * FROM 데이터베이스
    UNION/UNION ALL/INTERSECT/MINUS
    SELECT * FROM 인공지능;