SAK 図書館

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

SQL 基礎編 (その六) テーブル創成 create table、select、union、rename

基本的に Oracle、SQL-Server、MDB で共通です。

■基本型

  create table sak.受注m (
    受注番号         char    (015)     primary key,
    品番             varchar2(018),
    受注数           number  (009),
    得意先CD         char    (004),
    更新担当者       char    (007),
    更新日付         char    (010),
    更新時間         char    (008)
  );

■コピー創成

  create table sak.受注w1 as
    select * from sak.受注m where 受注番号 = '@';

  create table sak.受注w1 as
    select * from sak.受注m;

  create table sak.受注w1 as
    select 受注番号, 品番 from sak.受注m;

  ** テーブル構造とレコードだけがコピーされる。
  ** primary key などの整合性規則はコピーされない。
  ** 整合性規則がコピーされないのは、ワークテーブルの創成に都合が良い。
  ** primary key の指定が必要な時は、後で、alter table で追加する。
  ** 空のテーブルにしたい時は、ゼロ件抽出となるような where 句条件を指定
     する。(where 受注番号 = '@' など。)

■複合創成

  create table sak.受注w1 as
    select * from sak.受注m
      where 品番 in
      (select distinct 品番 from sak.品番m where 品番 = 'a001')
    union all
    select * from sak.受注m
      where 品番 in
      (select distinct 品番 from sak.品番m where 品番 = 'a001')
  ;

  ** 品番 'a001' のレコードを 2 回抽出して、ワークテーブルとして創成する。
  ** 重複レコードを除去する場合は、union all の代わりに union とだけ指定
     する。

■テーブル、ビュー、その他名前変更

  rename sak.受注w1 to sak.ゴミw1;

■SQL 基礎編資料
■SQL 基礎実地編資料
■SQL チューニング編資料
■Oracle PL/SQL 編資料
■PostgreSQL 編、JAVA Servlet、JSP 編資料
■MySQL 編資料
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索



Copyright (C) 1999-2025 Y.SAK