第 2 章 問合せの基本操作 この章では データベースから情報を検索する際に使用する SELECT コマンド および SELECT コマンドと 同時に使用する句について説明します 1. 問合せとは 2. 基本的な問合せ 3. 列の別名 4. 重複行を一意にする 5. 検索行の絞込み 6. 文字パター

Similar documents
第 1 章 条件分岐 この章では 条件に応じて処理を分岐する方法について説明します 1. CASE 式で複雑な条件分岐を実現 2. 関数を使用した条件分岐 3. MERGE 文による条件に応じた DML の実行

はじめに コースの概要と目的条件分岐の方法や複雑な集計の手法など SQL のコーディングの幅を広げるためのテクニックについて説明します また パフォーマンスを考慮した記述方法や正しい結果を取得するための記述方法などについても あわせて説明します 本コースでは 実践的な SQL の記述手法を広く浅く紹

第 5 章 結合 結合のパフォーマンスに影響を与える結合の種類と 表の結合順序について内部動作を交えて 説明します 1. 結合処理のチューニング概要 2. 結合の種類 3. 結合順序 4. 結合処理のチューニングポイント 5. 結合関連のヒント

第 2 章 PL/SQL の基本記述 この章では PL/SQL プログラムの基本的な記述方法について説明します 1. 宣言部 2. 実行部 3. 例外処理部

はじめに コース概要と目的 Oracle を使用した開発 管理を行う上でのファースト ステップとして リレーショナル データベース管理ソフトウェアである Oracle の役割 基本機能 基本アーキテクチャを幅広く理解することを目的としています 受講対象者 これから Oracle を使用する方 データ

はじめに コースの概要と目的 Oracle をより効率的に使用するための SQL のチューニング方法について説明します また 索引の有無 SQL の 記述方法がパフォーマンスにどのように影響するのかを実習を通して理解します 受講対象者 アプリケーション開発者 / データベース管理者の方 前提条件 S

Microsoft PowerPoint - 講義補助資料2017.pptx

第 7 章 ユーザー データ用表領域の管理 この章では 表や索引を格納するユーザー データ用表領域の作成や 作成後のメンテナンスに ついて解説します 1. ユーザー データ用表領域の管理概要 2. ユーザー データ用表領域作成時の考慮事項 3. ユーザー データ用表領域の作成 4. ユーザー データ

第 3 章 メディア障害とバックアップ リカバリ この章では メディア障害の発生に備えたバックアップ方法と 障害時の基本的なリカバリ方法につい て説明します 1. メディア リカバリ概要 2. ファイルの多重化 3. アーカイブ モードの設定 4. バックアップ概要 5. 一貫性バックアップ ( オ

アジェンダ ORACLE MASTER Oracle Database 11g 概要 11g SQL 基礎 Ⅰ 試験紹介 ポイント解説 Copyright 2011 Oracle. All rights reserved. 2

Oracle Application Expressの機能の最大活用-インタラクティブ・レポート

プレポスト【問題】

PowerPoint プレゼンテーション

Oracle活用実践演習コース

目次 1 集計関数 / 分析関数とは 2 集計関数 / 分析関数のパフォーマンス効果 3 ケーススタディグループ小計やクロス集計を計算するランキングを表示する前月比較を表示する累計を計算する移動平均を計算する構成比を計算する Oracle8i SQL Oracle8i Oracle Oracle C

Oracle Database 12cでのSQL*LoaderのExpress Modeによるロード

Chapter Two

1000 Copyright(C)2009 All Rights Reserved - 2 -

Microsoft PowerPoint - KeySQL50_10g_vlo2.ppt

DB12.1 Beta HandsOn Seminar

橡実践Oracle Objects for OLE

Oracle Direct Seminar <Insert Picture Here> 試験対策ポイント解説 11g SQL 基礎 Ⅰ 日本オラクル株式会社

5 Q. 選択リストにアスタリスク (*) を使用して 位置に基づくソートを行うとどうなりますか A. その表を構成している列の順序に対応して 暗黙的に番号が割り振られます 6 Q. 文字データが日本語の場合 ソートは五十音順に行われるのですか A. 五十音順ではなく 文字コード順になります 文字コ

内容 Visual Studio サーバーエクスプローラで学ぶ SQL とデータベース操作... 1 サーバーエクスプローラ... 4 データ接続... 4 データベース操作のサブメニューコンテキスト... 5 データベースのプロパティ... 6 SQL Server... 6 Microsoft

標準化 補足資料

<4D F736F F D204F C B838B82C B838B8EE88F878F912E646F6378>

PowerPoint プレゼンテーション

PA4

Oracle 入門 ~ 研修受講後のスキルアップサポート ~ 対応バージョン :Oracle 10gR1 ~ 12cR1 本資料は アシスト Oracle 研修をご受講いただいたお客様からのご質問や 研修ではご案内できなかった情報などを FAQ にまとめたものです 研修受講後のスキルアップの一助とし

Oracle9i

Oracle Application Expressの機能の最大活用-インタラクティブ・レポート

PostgreSQL SQL チューニング入門 ~ Explaining Explain より ~ 2012 年 11 月 30 日 株式会社アシスト 田中健一朗

_02_3.ppt

Microsoft PowerPoint - db03-5.ppt

データベースS

Oracle Direct Seminar <Insert Picture Here> 効果的な集計処理ことはじめ 日本オラクル株式会社

Microsoft PowerPoint pptx

テキスト中の表記について 画面中に表示される文字の表記ウィンドウ ボタン メニューなど 画面に表示される文字は [] で囲んで表記しています 画面上に表示される選択肢や 入力する文字については で囲んで表記しています ディレクトリの表記本テキストではファイルのパスを表す際 すべてデフォルトのインスト

Chapter Two

PowerPoint プレゼンテーション

Copyright(C)2010 i-corpration All Rights Reserved.

PowerPoint Presentation

APEX Spreadsheet ATP HOL JA - Read-Only

領域サイズの見積方法

Oracle8i SQL*Plus ユーザーズ・ガイドおよびリファレンス, リリース8.1

Oracle Database Connect 2017 JPOUG

PowerPoint プレゼンテーション

相続支払い対策ポイント

150423HC相続資産圧縮対策のポイント

ハピタス のコピー.pages

Copyright 2008 All Rights Reserved 2

Java Scriptプログラミング入門 3.6~ 茨城大学工学部情報工学科 08T4018Y 小幡智裕

Slide 1

今さら聞けない!? Oracle入門 ~後編~


eラーニング資料 e ラーニングの制作目標 データベース編 41 ページデータベースの基本となる概要を以下に示す この内容のコースで eラーニングコンテンツを作成予定 データベース管理 コンピュータで行われる基本的なデータに対する処理は 次の 4 種類です 新しいデータを追加する 既存のデータを探索

法制度改革と電子マネーにおける立法の可能性

テキスト 中 の 表 記 について 画 面 中 に 表 示 される 文 字 の 表 記 ウィンドウ ボタン メニューなど 画 面 に 表 示 される 文 字 は[]で 囲 んで 表 記 しています 画 面 上 に 表 示 される 選 択 肢 や 入 力 する 文 字 については で 囲 んで 表 記

report05_sugano.pages

report03_amanai.pages

release-270.PDF

Oracle Application Expressの機能の最大活用-インタラクティブ・レポート

FormPat インポート設定ガイド


Dolteng Scaffoldに対する機能追加とマスタ-ディテールScaffoldの紹介

テキスト中の表記について 画面中に表示される文字の表記ウィンドウ ボタン メニューなど 画面に表示される文字は [] で囲んで表記しています 画面上に表示される選択肢や 入力する文字については で囲んで表記しています ディレクトリの表記本テキストではファイルのパスを表す際 すべてデフォルトのインスト

BC4J...4 BC4J Association JSP BC4J JSP OC4J

Oracle Direct Seminar <Insert Picture Here> 体感型セミナー SQL をクイズ感覚で学ぶ! SQL クイズ 日本オラクル株式会社

Microsoft PowerPoint - 第5章補足-DB2組み込みSQL.ppt

早分かりS2Dao

結合演算 ( 復習 ) データベース論 (9) R 社員番号 氏名麻生太郎安部晋三与謝野馨森喜朗 部門経理課営業課総務課営業課 S 部門経理課営業課総務課 電話 問合せ言語と SQL(2) R S 社員番号

クエリの作成が楽になるUDF

セットアップカード

基本サンプル

目次 更新履歴... 1 はじめに... 3 レコードセット?... 3 準備... 5 SQL でデータを取得する... 6 データのループ処理... 7 列の値を取得する... 7 対象行を変更する (MoveFirst, MoveNext, MovePrevious, MoveLast)...

untitled

橡ExCtrlPDF.PDF

Microsoft PowerPoint - Lite10g_SyncArchitecture.ppt

初心者にもできるアメブロカスタマイズ新2016.pages

- 2 Copyright (C) All Rights Reserved.


基本サンプル

リレーショナルデータベース入門 SRA OSS, Inc. 日本支社 Copyright 2008 SRA OSS, Inc. Japan All rights reserved. 1

untitled

高確率軸馬発掘法&今週末から競馬の勝ち組になれる5つの作戦


SQL 基礎 (6) JOIN 句 - データの結合 作成日 : 2016/02/22 作成者 : 西村 更新履歴 更新日 更新概要 作業者 2016/02/22 新規作成 西村 はじめに この資料では 下記のような JOIN によるテーブル ( データ ) の結合について簡単に説明します INNE

5 Q. 結果セットを 1 行飛ばしに FETCH することはできますか A. できません Oracle は必ず結果セットを上から 1 行ずつ FETCH します 6 Q. カーソルを一度にいくつまでオープンできますか A. 初期化パラメータ OPEN_CURSORS で指定したの値までカーソルをオ

PowerPoint Presentation

基本サンプル

Microsoft Word - 18環設演付録0508.doc

PowerPoint プレゼンテーション

PowerPoint -O80_REP.PDF

Copyright All Rights Reserved. -2 -!

テキスト中の表記について 画面中に表示される文字の表記ウィンドウ ボタン メニューなど 画面に表示される文字は [] で囲んで表記しています 画面上に表示される選択肢や 入力する文字については で囲んで表記しています ディレクトリの表記本テキストではファイルのパスを表す際 すべてデフォルトのインスト

NEC COBOL SQL アクセス Server Runtime V1.0 COBOL SQL アクセス Server Runtime V1.0 (1 年間保守付 ) COBOL SQL アクセス Server Runtime V1.0 (1 年間時間延長保守付 ) セットアップカード SL438

今さら聞けない!? Oracle入門 ~前編~

Contents 1. 新機能 2. 機能改善 3. その他の改善 Hitachi Systems, Ltd All rights reserved. 1

untitled

Microsoft PowerPoint - 3-Forms-Others.ppt

Transcription:

はじめに コース概要と目的 データベース処理に使用する SQL の基本構文と使用方法について説明します 受講対象者 SQL を使用してアプリケーション開発される方 管理者となられる方 前提条件 Oracle 概要 コースを受講された方 もしくは同等の知識をお持ちの方 テキスト内の記述について 構文 [ ] 省略可能 { A B } A または B のどちらかを選択 n _ 数値の指定 デフォルト値 マーク 指定バージョンからの新機能 ( 左記の場合 Oracle 12cR1 からの新機能 ) 知っておいたほうが良いテクニック もしくは注意事項 参照ページ データ ディクショナリ ビュー

第 2 章 問合せの基本操作 この章では データベースから情報を検索する際に使用する SELECT コマンド および SELECT コマンドと 同時に使用する句について説明します 1. 問合せとは 2. 基本的な問合せ 3. 列の別名 4. 重複行を一意にする 5. 検索行の絞込み 6. 文字パターンでの検索 7. 検索結果の順序制御 8. 行のグループ分け 9. 問合せの基本操作のまとめ 10. 関数 (SQL ファンクション )

1. 問合せとは 問合せとは データベース内の表などからデータを検索することです 例えば ユーザーが社員や部門などの データ検索をする場合に使用します (1) SELECT 文 問合せは SELECT 文を使用して行います < 代表的な SELECT 処理 > 列の指定 (2-3) 行の絞込み (WHERE 句 :2-13) あいまい検索 (LIKE:2-29) 並び替え (ORDER BY 句 :2-35) グループ化 (GROUP BY 句 :2-45) 副問合せ (3-1) 集合演算処理 (3-17) 結合 (3-21) 株式会社アシスト Copyright(C) K.K. Ashisuto All Rights Reserved. 2-1

問合せ処理の例 データベース EMP 表 EMPNO DEPTNO 7369 20 7499 30 7902 20 7934 10 DEPT 表 DEPTNO DNAME LOC 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON SELECT( 問合せ ) 検索結果 < 検索結果 > 1 列の指定 (EMP 表から EMPNO 列 ENAME 列だけを検索 ) EMPNO ENAME 7369 SMITH 7499 ALLEN 7902 FORD 7934 MILLER 2 行の絞込み (EMP 表から EMPNO 列が 7369 の行だけを検索 ) EMPNO DEPTNO 7369 20 3 並び替え (EMP 表のデータを SAL 列の値が大きい順に表示 ) EMPNO SAL 7902 3000 7499 1600 7934 1300 7369 800 4 結合 ( 複数表から関連データを検索 ) DEPTNO ENAME DNAME 20 SMITH RESEARCH 30 ALLEN SALES 10 MILLER ACCOUNTING Copyright(C) K.K. Ashisuto All Rights Reserved. 株式会社アシスト 2-2

2. 基本的な問合せ データベース内の表からデータを問合せます (1) 列の指定 列名と表名を指定し データを問合せます SELECT [ 列名 [, 列名 ] * ] FROM 表名 列名 表名 表示する列名を指定します 複数の列を指定する場合 列名と列名の間を, ( カンマ ) で区切ります 全ての列名を指定する代わりに * ( アスタリスク ) を記述できます データを問合せる表名を指定します 注意事項表示される列の順番は 列の指定方法によって決まります 列名を指定指定した列の順番で結果を表示 * を指定表作成時に定義した列の順番で結果を表示 特定列を選択して実行する問合せ操作は 射影 とも呼ばれています 株式会社アシスト Copyright(C) K.K. Ashisuto All Rights Reserved. 2-3

単一列の指定 例 ) 会社の部門名 (DNAME) を全て表示する SQL> SELECT dname 2 FROM dept; DNAME -------------- ACCOUNTING RESEARCH SALES OPERATIONS 複数列の指定 例 ) 会社の部門に関する全データを表示する /* DNAME 列 LOC 列 DEPTNO 列の順番に指定 */ SQL> SELECT dname,loc,deptno 2 FROM dept; DNAME LOC DEPTNO -------------- ------------- ---------- ACCOUNTING NEW YORK 10 RESEARCH DALLAS 20 SALES CHICAGO 30 OPERATIONS BOSTON 40 /* LOC 列 DEPTNO 列 DNAME 列の順番に指定 */ SQL> SELECT loc,deptno,dname 2 FROM dept; LOC DEPTNO DNAME ------------- ---------- -------------- NEW YORK 10 ACCOUNTING DALLAS 20 RESEARCH CHICAGO 30 SALES BOSTON 40 OPERATIONS 列名を指定した場合は SELECT で指定した列の順番で結果を表示します Copyright(C) K.K. Ashisuto All Rights Reserved. 株式会社アシスト 2-4

* の指定 例 ) 会社の部門に関する全データを表示する SQL> SELECT * 2 FROM dept; DEPTNO DNAME LOC ---------- -------------- ------------- 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON * を指定した場合は 表作成時に定義した列の順番で検索結果を表示します 表構成の確認 表作成時に定義した列の順番は SQL*Plus コマンドの DESCRIBE で確認できます 例 )DEPT 表の表構成を確認する SQL> DESCRIBE dept 名前 NULL? 型 ----------------------------------------- -------- ---------------------------- DEPTNO NOT NULL NUMBER(2) DNAME VARCHAR2(14) LOC VARCHAR2(13) 別冊 SQL*Plus コマンド リファレンス ( 2-11 ) 株式会社アシスト Copyright(C) K.K. Ashisuto All Rights Reserved. 2-5

(2) 式の指定 SELECT 文では 算術演算子を使用して 加減乗除の計算を行うことができます 特定の数値列を算術式に含めることで 列の値にもとづいた計算結果を表示できます 算術演算子 ( 付 -7 ) 例 ) 社員の給与 (SAL) と年収 (SAL*12) を表示する SQL> SELECT ename,sal,sal*12 2 FROM emp; ENAME SAL SAL*12 ---------- ---------- ---------- SMITH 800 9600 ALLEN 1600 19200 WARD 1250 15000 JONES 2975 35700 MARTIN 1250 15000 BLAKE 2850 34200 CLARK 2450 29400 SCOTT 3000 36000 KING 5000 60000 TURNER 1500 18000 ADAMS 1100 13200 JAMES 950 11400 FORD 3000 36000 MILLER 1300 15600 (SAL*12 の計算結果を表示する ) Copyright(C) K.K. Ashisuto All Rights Reserved. 株式会社アシスト 2-6

3. 列の別名 AS キーワードを使用すると その処理において一時的に列に別名を定義できます 列名がわかりにくい場合など に便利です データベース内の列名を永続的に変更しているわけではありません SELECT 列名 AS 別名 [, 列名 ] FROM 表名 AS 直前で指定した列の別名を指定します 注意事項 別名が英字の場合は大文字として表示されます 別名に英字の大文字と小文字を区別させる もしくは空白を認識させる場合には 別名を " ( 二重引用符 ) で囲みます AS キーワードを使用せずに空白を使用しても 別名を定義できます しかし 列名と別名の区別がしにくいため AS キーワードを使用することをお薦めします 株式会社アシスト Copyright(C) K.K. Ashisuto All Rights Reserved. 2-7

例 )DNAME の列名を DEPARTMENT と変えて 部門と部門番号を表示する SQL> SELECT deptno,dname AS department 2 FROM dept; DEPTNO DEPARTMENT ---------- -------------- 10 ACCOUNTING 20 RESEARCH 30 SALES 40 OPERATIONS (AS キーワードを指定した DNAME 列のみ変更 ) 例 ) 社員の名前 給与 年収を表示する ただし 給与 (SAL) に Monthly Salary 年収 (SAL*12) に Annual Income とそれぞれ別名を付ける SQL> SELECT ename,sal AS "Monthly Salary", 2 sal*12 AS "Annual Income" 3 FROM emp; ENAME Monthly Salary Annual Income ---------- -------------- ------------- SMITH 800 9600 ALLEN 1600 19200 WARD 1250 15000 JONES 2975 35700 MARTIN 1250 15000 BLAKE 2850 34200 CLARK 2450 29400 SCOTT 3000 36000 KING 5000 60000 TURNER 1500 18000 ADAMS 1100 13200 JAMES 950 11400 FORD 3000 36000 MILLER 1300 15600 ( 大文字 小文字 空白を認識 ) 例 )LOC 列の列名を LOCATION と変えて表示する (AS キーワードを使用しない ) SQL> SELECT loc location FROM dept; LOCATION ------------- NEW YORK DALLAS CHICAGO BOSTON ( 空白で別名を指定すると 列名と別名の区別がしにくい ) Copyright(C) K.K. Ashisuto All Rights Reserved. 株式会社アシスト 2-8