【Oracle】基本SQLコピペ集「初心者向け」

最近仕事などでデータベースを使い始めたものの、なかなか基本的な操作が覚えられない…。そんな初心者の方たち向けに、よく使用するSQLを、いくつかコピペできる形にして集めてみました!

目次

■よく使用するSQL

select

ここでは、使用頻度が高いSQLを紹介していきます。

SELECT文

表(テーブル)から、指定のデータを抽出するSQLです。

SELECT[列名]
FROM[表名]

INSERT文

表(テーブル)に、データを挿入するSQLです。

INSERT INTO[表名](列名・・・)
VALUES(設定値・・・)

UPDATE文

表に格納されている値を更新するSQLです。

UPDATE[表名]
SET[列名]= [設定値]
WHERE[列名]=[条件値]

DELETE文

表に保存されているデータを削除するSQLです。

DELETE FROM[表名]
WHERE[列名]=[条件値]

■知っていると便利なSQL

select timestamp

以下では、使用頻度は少ないものの、知っているとたまに役に立つSQLを紹介していきます。

SELECT文(数分前のデータ参照)

Oracleでは、一時的に保存されているデータから、過去のデータを参照することができる場合があります。

もし誤ってデータを消したり更新してしまった場合には、以下を FROM[表名]の後に記載することで、指定の時間を遡ったデータを参照することも可能です。(あくまで一時保存データなので、遡れる時間には限度があることも覚えておいてください)

as of timestamp (systimestamp – interval ‘[遡りたい時間(分)]’ minute )

INSERT文(SELECT文との組み合わせ)

INSER文は、データを挿入するSQLと紹介しました。SELECT文と組み合わせることで、表に格納されているデータを挿入することもできます。

INSERT INTO[表名A]
SELECT[列名]
FROM[表名B]

■よく検索(SELECT)するテーブルのSQL

select column

個人的になりますが、よく検索するoracle オブジェクトや、ある列名を持つテーブルの検索方法についても紹介します。

DIRECTORY検索方法

oracleでは、DIRECTORYと呼ばれる、ディレクトリの実パスを保存するテーブルがあります。様々な場面で、このDIRECTORYに保存内容を調べることがあるので、紹介しておきます。
(ちなみに、SQL中の「*」は、テーブルの項目を全て指定する際に使われます。)

SELECT * FROM ALL_DIRECTORIES

ある列名をもつテーブルの検索方法

多くのデータ、テーブルを見る際、「あの列名って、どのテーブルに保存されているんだっけ?」といったように、データの保存テーブルがわからなくなることがあります。そんな時非常に便利なのが、以下の検索方法です。

SELECT TABLE_NAME,COLUMN_NAME
FROM USER_TAB_COLUMNS
WHERE COLUMN_NAME LIKE ‘%[■■]%’
ORDER BY TABLE_NAME ,COLUMN_NAME

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次