

こんにちはtmgmです。
いまTANTOU_CDとTANTOU_NAMEという項目のある
T_TANTOUというテーブルがあるとします。
TANTOU_CD_|_TANTOU_NAME_
_____1_|_担当者1___
_____2_|_担当者2___
_____3_|_担当者2___
担当者2が二人いるのがわかりますか?
ここでこの担当者2を”担当者3”に(どちらも)UPDATEしつつ、UPDATEした件数をCOUNTするSQL文の
書き方が分からずに困っています。
要するに
UPDATE T_TANTOU
SET TANTOU_NAME = '担当者3'
WHERE TANTOU_CD = '担当者2'
と
SELECT COUNT(TANTOU_NAME) FROM T_TANTOU
を同時にやりたいってことです。
どうすればよろしいでしょうか?
ご返答よろしくお願いします。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
こんにちわ。
#3 の方がPL/SQL での方法を紹介されているので、
私はPro*C (Oracle) の方法をご紹介します。
INSERT 文, UPDATE 文, DELETE 文, SELECT INTO 文を実行した時の処理件数は,
sqlca.sqlerrd[2] で通知されます。
詳細は、Pro*C/C++ のマニュアルで確認して下さい。
No.3
- 回答日時:
Oracle DB+PL/SQLであれば、以下のように出来ます。
CREATE TABLE tantou_tbl (tantou_cd NUMBER, tantou_name VARCHAR2(10));
INSERT INTO tantou_tbl VALUES (1,'担当者1');
INSERT INTO tantou_tbl VALUES (2,'担当者2');
INSERT INTO tantou_tbl VALUES (3,'担当者2');
SET SERVEROUTPUT ON
DECLARE
l_updated_count NUMBER;
BEGIN
UPDATE tantou_tbl SET tantou_name = '担当者3' WHERE tantou_name = '担当者2';
l_updated_count := SQL%ROWCOUNT;
DBMS_OUTPUT.PUT_LINE(TO_CHAR(l_updated_count) || '行更新されました。');
END;
/
参考URL:http://otn.oracle.co.jp
No.2
- 回答日時:
どのようにしてSQLを発行しているのですか?
DBは?ミドルウェアは?
処理した件数って一緒に返されている場合が多いです。
たとえばDAOではExecuteの戻り値とか。
No.1
- 回答日時:
使ってるソフトは何ですか?
アクセスならば、重複クエリーウィザードで
重複対象をTANTOU_NAMEにすれば重複してる件数が
出ますよ。
これがUPDATE対象の件数になります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
oracle10g update件数の取得方法
Oracle
-
PL/SQLカーソルの2重FORループができません
Oracle
-
カーソル0件の時にエラーを発生させる
Oracle
-
-
4
SQLローダーCSV取込で、囲み文字がデータ中に入っている場合について
Oracle
-
5
【DB】同じトランザクション内でupdateとselectをしたときの結果値
その他(データベース)
-
6
Oracle 8i コンマ(,)を含むデータをinsertしたい
その他(データベース)
-
7
ROWNUMでUPDATEをしたいのですが・・・。
Oracle
-
8
SELECTで1件のみ取得するには?
Oracle
-
9
SQL実行結果取得
Oracle
-
10
selectした結果の余計な余白を取るにはどうしたらよいのでしょうか
Oracle
-
11
Designer.vbは直接コードをいじってはだめ?
Visual Basic(VBA)
-
12
カーソルを使って、最終行レコードの判断はどうすればよいのでしょうか。
SQL Server
-
13
group byの並び順を変えるだけで結果が異なる
Oracle
-
14
sqlserverで集計結果をUPDATEしたいです
SQL Server
-
15
ストアドプロシージャ_カーソルのヒット件数
その他(データベース)
-
16
Statement ignored というエラー
Oracle
-
17
件数とデータを同時に取得するには?
Oracle
-
18
テーブルの存在チェックについて
Oracle
-
19
sqlplusの処理が途中でとまる
Oracle
-
20
SQL、2つのテーブルで条件一致したものだけdeleteする方法は?
Oracle
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SELECTで1件のみ取得するには?
-
Date型にNULLをセットしたい V...
-
SQL>UPDATEと同時にその件数を...
-
☆☆☆☆SQL Olacle 3つ以上の文字...
-
oracleのinsert select性能
-
Oracleでの文字列連結サイズの上限
-
GROUP BYを行った後に結合した...
-
OracleのSQL*PLUSで、デー...
-
レコードが存在しなかった場合
-
select insertで複数テーブルか...
-
あるカラムのMAX値+1をINSERTし...
-
Accessのクエリでフィールドの...
-
SELECTの結果で同一行を複数回...
-
DataGridViewの、選択されてい...
-
沿線コード
-
ADO VBA 実行時エラー3021
-
差し込み印刷のレコード数について
-
MySQLで MAX()とGROUP BYを使う...
-
サブフォームに新規レコードを...
-
サブレンジ分割されたNDB(富士...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Date型にNULLをセットしたい V...
-
SELECTで1件のみ取得するには?
-
sqlplusの処理が途中でとまる
-
SQL>UPDATEと同時にその件数を...
-
☆☆☆☆SQL Olacle 3つ以上の文字...
-
oracleのinsert select性能
-
文字列を連結した後に1つの変...
-
ORDER BY 半角カナ
-
Accessでテーブル名の変更
-
異なるDB間でのJOINやVIEWについて
-
プロシージャで変数をテーブル...
-
マクロの編集方法を教えて下さい。
-
PostgreSQLで小数点以下を処理...
-
存在するデータの一覧を出すには?
-
AccessVBAでリンクテーブルの参...
-
ACCESSのSQLの書き方
-
PLSQLで変数に格納されたSQL文...
-
時間集計につて
-
オラクル オブジェクトのデー...
-
SELECTについて
おすすめ情報