やりたいことの出力イメージ
2015年8月29日土曜日
2014年4月10日木曜日
2014年2月24日月曜日
Oracle限定SQL備忘録その2 UPDATE
SQL備忘録第2弾
INSERTに続いてよく使うのはUPDATE(-。-;
あくまで、gggの話です(-。-;
UPDATE
読み:アップデート
機能:データを更新する
検証DB:Oracle10gR2
※参考にする場合は必ず動作検証してください
次の2つのテーブルをサンプルとして使用。
○テーブル名:酒
列1:Jコード (varchar2)
列2:名称 (varchar2)
列3:酒造 (varchar2)
○テーブル名:日本酒
列1:Jコード (varchar2)
列2:名称 (varchar2)
列3:酒造 (varchar2)
UPDATE 日本酒 SET Jコード = '9999999999999' WHERE 名称 = '鷹来屋';
○ケース2:テーブル日本酒とテーブル酒でJコードが一致するものにおいて、
テーブル日本酒の名称でテーブル酒の名称を更新する
UPDATE 酒 s SET (名称 ) = (SELECT n.名称 FROM 日本酒 n WHERE s.Jコード = n.Jコード);
こんなとこかなぁー
INSERTに続いてよく使うのはUPDATE(-。-;
あくまで、gggの話です(-。-;
UPDATE
読み:アップデート
機能:データを更新する
検証DB:Oracle10gR2
※参考にする場合は必ず動作検証してください
次の2つのテーブルをサンプルとして使用。
○テーブル名:酒
列1:Jコード (varchar2)
列2:名称 (varchar2)
列3:酒造 (varchar2)
○テーブル名:日本酒
列1:Jコード (varchar2)
列2:名称 (varchar2)
列3:酒造 (varchar2)
UPDATEの実行例を2点程
○ケース1:テーブル日本酒の酒造を特定の値で更新UPDATE 日本酒 SET Jコード = '9999999999999' WHERE 名称 = '鷹来屋';
○ケース2:テーブル日本酒とテーブル酒でJコードが一致するものにおいて、
テーブル日本酒の名称でテーブル酒の名称を更新する
UPDATE 酒 s SET (名称 ) = (SELECT n.名称 FROM 日本酒 n WHERE s.Jコード = n.Jコード);
こんなとこかなぁー
2014年1月27日月曜日
Oracle限定SQL備忘録その1 INSERT
gggは業務の都合で、SQLを書かない日はないというと大げさですが、
何ら形で、毎日SQLとは関わっています。
が、SQLの構文を覚えれないのです。。。
いつもの書くときどーだっけってなりますw
ということで、SQLの備忘録として、ログっていきます。
gggはOracle以外のDBを触ることが殆ど無いので、なので、
備忘録はOracle限定ですw
記念すべき一回目はINSERT (インサート)
よく使うけど、空で書けないSQLのNO1です。ggg的にですが...
INSERT
読み:インサート
機能:データを登録する
検証DB:Oracle10gR2
※参考にする場合は必ず動作検証してください
次の2つのテーブルをサンプルとして使用。
○テーブル名:酒
列1:Jコード (varchar2)
列2:名称 (varchar2)
列3:酒造 (varchar2)
○テーブル名:日本酒
列1:Jコード (varchar2)
列2:名称 (varchar2)
列3:酒造 (varchar2)
INSERTの実行例を2点程
○ケース1:テーブル日本酒にレコードを登録
INSERT INTO 日本酒 (Jコード,名称,酒造) VALUES ('9999999999999','獺祭','旭酒造');
○ケース2:テーブル日本酒を取得し、取得結果をテーブル酒に登録
INSERT INTO 酒( SELECT * FROM 日本酒 WHERE Jコード = '9999999999999');
注意:テーブル酒とテーブル日本酒のテーブルレイアウトが同じである必要がある
よく使うINSERTのケースはこんところかな〜
次回はUPDATEにしよ☆
何ら形で、毎日SQLとは関わっています。
が、SQLの構文を覚えれないのです。。。
いつもの書くときどーだっけってなりますw
ということで、SQLの備忘録として、ログっていきます。
gggはOracle以外のDBを触ることが殆ど無いので、なので、
備忘録はOracle限定ですw
記念すべき一回目はINSERT (インサート)
よく使うけど、空で書けないSQLのNO1です。ggg的にですが...
INSERT
読み:インサート
機能:データを登録する
検証DB:Oracle10gR2
※参考にする場合は必ず動作検証してください
次の2つのテーブルをサンプルとして使用。
○テーブル名:酒
列1:Jコード (varchar2)
列2:名称 (varchar2)
列3:酒造 (varchar2)
○テーブル名:日本酒
列1:Jコード (varchar2)
列2:名称 (varchar2)
列3:酒造 (varchar2)
INSERTの実行例を2点程
INSERT INTO 日本酒 (Jコード,名称,酒造) VALUES ('9999999999999','獺祭','旭酒造');
○ケース2:テーブル日本酒を取得し、取得結果をテーブル酒に登録
INSERT INTO 酒( SELECT * FROM 日本酒 WHERE Jコード = '9999999999999');
注意:テーブル酒とテーブル日本酒のテーブルレイアウトが同じである必要がある
よく使うINSERTのケースはこんところかな〜
次回はUPDATEにしよ☆
2011年7月27日水曜日
Oracle(11gR2)にてIndexヒント句を使う時のメモ
ヒント句はテーブル名とインデックス名を記述するけど、
FROM句でテーブル名に別名つけている場合は、ヒント句に記述するテーブル名も別名にしないとダメそう。
SELECT /*+ INDEX(a index_a) */ * FROM emp a WHERE a.emp_id = '999';
あと、ヒントを複数指定する場合
SELECT /*+ INDEX(a index_a) INDEX(b index_b) */ * FROM emp a,school b WHERE a.emp_id = b.emp_id;
2010年1月29日金曜日
忘れないうちにプロシージャについてメモ
シノニムを作ってアクセスしているテーブルをプロシージャからSELECT文を書きコンパイルすると、表が見つかりませんなるエラーがでた。
普通にSQLからSELECTするのはいけるのにと思ってここ数日悩んでいたが、やっと解決☆忘れないうちにうちにメモ☆
エラーメッセージの内容は表が見つからないだったけども、どうやら権限不足だったみたい。
次の文を発行して、権限を付加するとうまくいった。
grant select on ATABLE toスキーマ名
もちろん自分では解決していないwww
先輩ありがとう。
普通にSQLからSELECTするのはいけるのにと思ってここ数日悩んでいたが、やっと解決☆忘れないうちにうちにメモ☆
エラーメッセージの内容は表が見つからないだったけども、どうやら権限不足だったみたい。
次の文を発行して、権限を付加するとうまくいった。
grant select on ATABLE toスキーマ名
もちろん自分では解決していないwww
先輩ありがとう。
登録:
投稿 (Atom)
