
初めまして。sql初心者です。OracleのSQLについて質問があります。
「update Aテーブル set Aテーブル.構成順 = (select Bテーブル.順番 from Bテーブル where Aテーブル.ID = Bテーブル.ID and Aテーブル.種類 = Bテーブル.種類CD)」
こういった内容のSQLって発行できるんでしょうか。
Bテーブル.種類CDの"種類CD"で「コンポーネント"種類CD"を宣言してください」というエラーになります。
書き方が分かりません。。
すいませんが教えていただきたく思います。
よろしくお願いいたします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
書けます。
以下のような感じでSQLを発行します。update Aテーブル a
set ( Aテーブル.構成順 ) =
( select b.Bテーブル.順番
from Bテーブル b
where a.Aテーブル.ID = b.Bテーブル.ID
and a.Aテーブル.種類 = b.Bテーブル.種類CD
)
where exists (SELECT 'X'
FROM Bテーブル x
where a.Aテーブル.ID = x.Bテーブル.ID
and a.Aテーブル.種類 = x.Bテーブル.種類CD
);
updateの構文は以下マニュアルを参照。
http://otndnld.oracle.co.jp/document/products/or …
OracleでSQLを書いた場合のエラー対処方法としては、
1.エラーコードを確認する。
※ORA-XXXXXX、PLS-XXXXXのようなエラーコード。
これをマニュアル「エラー・メッセージ」で確認。
対処法を確認する。
2. SQLリファレンスを確認。
マニュアルのSQLリファレンスを確認し、構文をチェックする。
3. SQLを発行したツールを確認する。
ツールが対応していない場合もありえるので、
Oracle標準のツール「SQL*Plus」で発行してみる。
まずは単体のSQLがSQL*Plusで発行できるか確認してください。
3rd_001様
お礼が遅くなり大変申し訳ありませんでした。
回答ありがとうございました。
対処法まで記載していただきとても嬉しかったです。
質問内容につきましては、解決いたしました。
本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLで複数列のデータを複数行に...
-
SQLでSUMなどの関数でデータが...
-
SQL、2つのテーブルで条件一致...
-
DBからタブ区切りのCSVデータを...
-
SQL(oracle)でご助言いただきた...
-
update文で改行を入れる
-
sqlplusで表示が変なので、出力...
-
件数とデータを同時に取得する...
-
プライマリキーとは
-
カラム情報(主キー、データ型、...
-
UPDATE文で、書き換えるデータ...
-
Viewのカラムの長さが不明?
-
SQL文について
-
半角英数文字の抽出がしたい。
-
SQLでデータを1件だけ取得した...
-
テーブル名をカラムとして取得...
-
ROWNUMでUPDATEをしたいのです...
-
SQLの書き方について
-
SQL行列入れかえの方法を教えて...
-
「テーブルに座って……」という...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
sqlplusで表示が変なので、出力...
-
SQL*LoaderでCSVから指定した列...
-
SQL、2つのテーブルで条件一致...
-
update文で改行を入れる
-
DBからタブ区切りのCSVデータを...
-
ROWNUMでUPDATEをしたいのです...
-
SQLでSUMなどの関数でデータが...
-
カラム位置変更
-
SQL(oracle)でご助言いただきた...
-
SQL 複数テーブルのupdate
-
テーブル名をカラムとして取得...
-
DELETE文とロックについて
-
LONG型の先頭250バイトを Varch...
-
SQLで違うテーブルの値を比較し...
-
特定のカラムが更新されたとき...
-
件数とデータを同時に取得する...
-
半角英数文字の抽出がしたい。
-
OracleのSQLで同テーブルのカラ...
-
数値をNUMBER型にするかCHAR型...
-
Viewのカラムの長さが不明?
おすすめ情報