ラベル Oracle DB の投稿を表示しています。 すべての投稿を表示
ラベル Oracle DB の投稿を表示しています。 すべての投稿を表示

2017/01/27

オラクル スケジューラー テンプレ

  • Goal
    DBMS_SCHEDULERパッケージを使って、PL/SQLブロックや、プロシージャのスケジュールを作る。Oracle Schedulerを使う。

  • Sourceサンプル
    Sample1 - PLSQLブロックを5時57分から23時57分まで、毎時間流す
    Sample2 - プロシージャを2時間おきに
    流す

  • 参考 Thanks!!
    Oracle Scheduler マニュアル

2016/09/25

1.他のテーブルとのマッチングのやりかた(1列文字列から1行テーブルへ変換)

目次に戻る
APEXでのCHECKBOX(チェックボックス)の取扱

1.他のテーブル(名称マスター)とのマッチングのやりかた
 (1列文字列から1行テーブルへ変換、その後マッチングしてまた1行文字列に戻す)


 Goal ‐ 以下のように、チェックボックスの返り値とマスターをマッチングをする
 #SQLサンプル
  COLUMN FOODS を FUNCTION T_GET_NAME に渡して、名称リストを取得

 #FUNCTION T_GET_NAME のSQL

 
 #解説 - コロン(:)区切りのテキストを1行テーブルへ変換するSQL






2016/09/24

CHECKBOX(チェックボックス)のハンドリング - 目次 - APEX


APEX上でのCHECKBOX(チェックボックス)のハンドリング方法


Table of contents
 
1.他のテーブルとのマッチングのやりかた

  (1列文字列から1行テーブルへ変換)
 2.検索する/フィルターをかける


Background

 APEXでチェックボックスを使う、コロン(:)区切りの文字列で値が帰ってくる。
 それをどう扱うのか?というメモ...

 (例)




2016/07/09

同一グループ内の1件目を抜き出す SQL


  • Goal
    同一グループ内の一番上のレコードだけをSQLで抜き出す。
    例えば、売上明細から品番別の最も売上件数が多かった年月を抜き出す。
    アウトプットは、<品番>、<最も売上が上がった年月>、<その年月の売上件数>
  • How
    1. 月別に売上件数をサマリー
    2. ROW_NUMBER()で、一番売上件数が多かった月に'1'をセット
    3. ROW_NUMBER()が'1'だけを抜き出す
     
  • Source


2016/06/14

buffer overflow. Use SET command to reduce ARRAYSIZE or increase MAXDATA.

  • 状況
    SQL*PLUS でSQL実行時に、エラーメッセージ”buffer overflow. Use SET command to reduce ARRAYSIZE or increase MAXDATA.”が表示される。

    環境 ー 古いんです (^^;

    SQL*Plus: Release 3.3.4.0.0 - Production on Mon Jun 13 10:56:36 2016

    Copyright (c) Oracle Corporation 1979, 1996.  All rights reserved.
    Connected to:
    Oracle8i Enterprise Edition Release 8.1.7.4.0 - Production
    With the Partitioning option
    JServer Release 8.1.7.4.0 - Production

    SQL> select * from v$version;
    BANNER
    ----------------------------------------------------------------Oracle8i Enterprise Edition Release 8.1.7.4.0 - ProductionPL/SQL Release 8.1.7.4.0 - ProductionCORE    8.1.7.0.0       ProductionTNS for Solaris: Version 8.1.7.4.0 - ProductionNLSRTL Version 3.4.1.0.0 - Production

  • Solution

    SQL> SET ARRAYSIZE 1

    上記を実行の上、SQLを実行する。

2016/06/09

Data set サンプル - Kaggle

サンプル作成用のデータは、以下から取得

Kaggle - https://www.kaggle.com/


1. TITANIC - タイタニック号の乗客名簿

2. IRIS - アヤメのデータ

2016/05/10

UPSERT のサンプル - データがあればUPDATE、なければINSERT


  • Goal
    データがあればUPDATE、なければINSERTする。
    APEXのダイナミックアクションでの利用を想定しており、ボタンをクリックした際にプロシージャで呼び出して、テーブルのUPSERTをする。
  • How
    Merge文を使う
    COLUMN1-4がキーで、FlagをUPSERTする
     
  • Source

2016/05/06

前年同月比較、前月比較 - 売上日報 SQL


  • Goal
    セールス別に、当月の売上、前年同月、前月を横並びで表示する。レポートのタイミングはオンデマンドを想定しているので、売上明細からSQLで取り出しを行う。
  • How
    1. 月別グルーピング用のフラグを、明細に追加
    2. DECODE文で、必要な値だけサマリー(条件付きサマリー)
    3. GROUP BY ROLLUP で、合計行 を追加
     
  • Source

    #ちょっと今月売上良すぎだけど...

2016/03/22

雑多な1行SQLメモ ‐ Oracle - 単語登録用

単語登録して呼び出しているSQLバックアップ

‐Oracle編