Oracle-ocp-051


Oracleユーザーを表示するには、これらの表データ辞書表(ユーザーのすべての表を管理)を使用します.
desc user_tables;(        )
select tables_name from user_tables;(SCOTT         )
         ,          
       、    、                  

表示行間隔の設定
set linesize 200;   200

set pagesize 50;    50 
create table test(hiredate varchar(20));   

現在のユーザーが使用できるテーブルの表示
select table_name from user_tables;

タイトルのデフォルト設定
              :   
          :   
         :  
           
              

別名の定義
         
      、     、      (                 AS)             、             

リンク文字列
select ename||job from emp;
             

ラインの繰り返し
select distinct deptno from emp;
distinct (  )

空の値のみ表示
select * from emp where mgr is null ;

ろんりてきけってい
AND          ,   true(            )
OR           。   true
NOT          true

sqlplus下クリアスクリーンclear screen
優先度ルール
演算子
意味
加減乗除
えんざんし
パイプシンボル
リンク演算子
where
比較演算子
Null値
IS 、[not]、 null、like、[not]、in
5
[not]DETWEEN(何かの間、何かの外)
!=
等しくない
条件が偽の場合はtrueを返します
NOT論理条件
および
AND論理条件
または
OR論理条件
ORDER BY文の使用
  order by            
ASC:   (    )    
DESC:  
order by     select      

           
select ename,sal gz from emp order by 2;
           
           
select ename,sal,deptno from emp order by 3,2 desc;
 sal    (    )

データベースのシャットダウンとオープン
shutdown normal (  )
startup mount (  )

代替変数
     (&)  (&&)(  )        where  order by  
    、  、  select  
      
    、      
           

DEFINコマンドの使用
  define             
  undefine       
     
define abc=20
select * from emp where depton=&abc;(       )
    undefine abc=20
         

SQL関数
    (         )
    (          )
     、          、         、          、         、    、    、            
    
  、  、  、  、  

文字関数
       
LOWER、UPPER、INITCAP、
      
CONCAT、SUDSTR、LENGTH、

関数#カンスウ#
結果
LOWER(‘SQL Course’)
(sql course)すべて小文字
UPPER(‘SQL Course’)
(SQL COURSE)すべて大文字
INITCAP('SQL Course')
(Sql Course)頭文字大文字
dualダミーテーブル(メモリに存在する存在しないデータベース)
文字処理
関数#カンスウ#
結果
CONCAT(‘Hello','World’)
HelloWorldは2つの文字列をサポートしています
SUDSTR ('HelloWorld',1,5)
Hello(1~5)文字列切り取り
LENGTH ('HelloWorld')
10(文字列の長さ)
INSTR('HelloWorld','W')
6(位置決め文字位置)
LPAD(salary,10,'*')
**24000(左充填)
RPAD(salary,10,'*')
2万4,000**(右充填)
REPLACE ('JACK and JUE','J','BL')
BLACK and BLUE
TRIM('H'FROM 'HelloWorld')
ElloWorld(指定文字を除く)
数値関数
ROUND:           (-1     )
select round(45.923,2) from dual;
  45.92
TRUNC:           
  40
MOD:         
select mob(10,3) from dual;
  1

処理日
oracle DB            :  、 、 、 、  、  、 
       DD( 2   )-MON( 1  12 )-RR(      )  21    20  
              20    21     、    21    20     

RR日付フォーマット
現在の年
指定した日付
RR形式
YY形式
1995
27-OCT-95
1995
1995
1995
27-OCT-17
2017
1997
2001
27-OCT-17
2017
2017
2001
27-OCT-95
1995
2095
  • 現在の年の2桁が0-49の場合、現在の世紀の
  • を返します.
  • 現在の年の2桁が50-99の場合、現在の世紀の次の世紀の
  • を返します.
  • 指定された2桁の年が0-49の場合、現在の世紀の
  • を返します.
  • 指定した2桁の年が50-99の場合、現在の世紀の次の世紀の
  • を返します.
    Sysdateは、オブジェクトを返す関数です.-日付-時間
    日付処理関数
    関数#カンスウ#
    結果
    MONTHS_DETWEEN
    2つの日付間の月数
    ADD_MONTHS
    カレンダー月を日付に追加
    NEXT_DAY
    指定した日付以降の次の日付
    LAST_DAY
    当月末日
    ROUND
    端数処理日
    TRUNC
    切断日
    MONTHS_BETWEEN('01-sep-95','11-jan-94')
    19.6774194
    ADD_MONTHS('31-jan-96',1)
    29-feb-96
    NEXT_DAY('01-SEP-95',FRIDAY)
    08-SEP-95
    LAST_DAY('01-FEB-95')
    28-FEB-95
    ROUND(SYSDATE,'MONTH')(month月)仮定sysdate='25-jul-03'
    01-AUG-03(15以上は月1)
    ROUND(SYSTATE,'YEAR')(year年)
    01-JAN-04(年が1(月)以上になると6以上になる年が1月以上になるなど)
    TRUNC(SYSDATE,'MONTH')
    01-JUL-03
    TRUNC(SYSDATE,'YEAR')
    01-JAN-03
    変換関数と条件式
  • 暗黙データ型変換
  • データ型変換
  • を表示する.
  • 数字タイプ、文字タイプ、時間タイプの変換にTO_を使用CHAR関数処理日
  •         
         
                   
        fm  、               
               
    

    要素
    結果
    YYYY
    数字で表示される完全な年
    YEAR
    英語で表記された年
    MM
    月の2桁の数値
    MONTH
    月のフルネーム
    MON
    月の3文字の略語
    DY
    1週間のある日の3文字の略語
    DAY
    週に1日のフルネーム
    DD
    数字で表す月中某日
    9
    数字を表す
    0
    強制表示0
    $
    浮動するドル記号を配置
    L
    浮動ローカル通貨記号の使用
    .
    小数点を表示
    ,
    千桁の指示としてカンマを表示
    ネスト関数
  • 単一行関数は任意の層
  • にネストすることができる.
  • ネスト関数の計算順序は、最内層から最外層
  • までである.
  • ネスト関数内から外へ
  •     、          
             、            、     、        :
    NVL(expr1,exrp2)
    NVL2(EXPR1,EXRP2,EXRP3)
    NULLIF(expr1,expr2)

    グループ関数レポート集計データ
    AVG
    平均値の計算
    count
    1つのフィールドの行数
    max
    最大値
    min
    最小値
    sum
    フィールドの合計
    count
    行数の表示
    distinct
    重複行の削除
    データ・グループの作成
    group by   
    select deptno,avg(sal) from emp group by deptno;
          
  • マルチカラムパケット
    select deptno,avg(sal),job from emp group by deptno,job;
  • HAVING句限定グループ結果
    select deptno,max(sal) from emp group by hacing max(sal)>=3000;
  • 複数のテーブルを結合表示するデータ
      outer                 
                     
  • を用いる.
  • 連結タイプ
        
    natural join   
    using   
    outer  (   )
    left outer join 
    right outer join
    full outer join
        
  • ナチュラルリンク
  • を作成
    natural join                     
    
                           
                     ,       
  • select deptno from dept natural join emp
                  
  • using文を使用してリンク
                ,        ,   using          
             ,  using           
    natural loin  using         。
  • を作成
  • select ename,deptno feom emp join dept using(deptno);
  • using句でテーブル別名
       using            
       sql              ,         
  • を使用する.
  • ON句を使用するリンク
                                 
      ON                 
                 
      ON          
    inner結合とouter結合
     sql:1999 ,                ,    inner
                inner     ,    (  )       ,        (  )outer  
                inner     ,           ,        outer  
  • を作成する.
  • サブクエリ
          (    ),      (    )            
  • 行サブクエリ
         
  • 演算子
    意味
    =
    に等しい
    >
    より大きい
    >=
    以上
    <
    より小さい
    <=
    以下
    <>
    等しくない
  • 複数行サブクエリ
  • 集合オペレータ
        
        
        
    select                
                                    
                
    order dy             
    Oracle server       
        union all    、          
                     
        union all    ,                 
  • union演算子
    uninon演算子は、2つのクエリから重複するローを含まないローを分割します.

  • データ操作文
    DML文
        
  • insert into
  • を追加
  • updateを変更するには、条件
  • に従う必要があります.
  • 行deleteを削除するには、条件delet from(テーブル)where=(条件)
  • に従う必要があります.
    DDL文
                   
                  DML  
      DDL          (DCL)  
    
          DML SQL      
                :
      COMMIT ROLLDACK  
      DDL DCL  (    )
        SAQL Developer SQL*Plus     
      commit rolldack  、  
            

    データベース取引
      savepoint (a)                  
      rollback to savepoint           
       B    A
        A B   

    COMMIT実行後のデータ状態

    ROLLBACK操作実行後のデータ状態
              
               
    delete from copy_emp;
    rollback;