SQL文についてです。
表Aで列1と列2が'◎'のものについて、列3,列4,列5をそれぞれ'○','△','×'に更新したい場合は下記でOKだと思います。
UPDATE 表A
SET 列3 = '○', 列4 = '△', 列5 = '×'
WHERE 列1 = '◎' AND 列2 = '◎'
列1と列2をキーとして表Aと結合できる表Bが存在するとします。
条件に表Bの列6が'□'だった場合を追加したい時、どのような方法で行えば良いのでしょうか?
内部結合やWHERE EXISTSなどをいろいろ調べたのですが、SQL文に慣れていないためかうまくいきません。
初歩的な質問で申し訳ありませんが過去質問で参考になるものがなかったのでお願いします。
No.1ベストアンサー
- 回答日時:
UPDATE 表A
SET 列3 = '○', 列4 = '△', 列5 = '×'
WHERE 列1 = '◎' AND 列2 = '◎'
AND EXISTS
( SELECT 1 FROM 表B
WHERE 表B.列1 = 表A.列1
AND 表B.列2 = 表A.列2
AND 表B.列6 = '□' )
じゃだめですか。
nora1962さんありがとうございます。
実際の処理は複雑条件であり私が初心者であることで検証に時間がかかりましたが教えていただいた通りの構文でうまくいきました!
大変ありがとうございました。
No.2
- 回答日時:
おまけです(内部結合の例)
UPDATE 表A
SET 列3 = '○', 列4 = '△', 列5 = '×'
FROM 表A a
INNER JOIN 表B b ON b.列1 = a.列1 AND b.列2 = a.列2 AND b.列6 = '□'
WHERE a.列1 = '◎' AND a.列2 = '◎'
jamshid6さんありがとうございました。
お二方にやさしくアドバイスいただき感謝すると同時に、もっと自分で苦労して調べなくてはと実感しました。
今回は日限があったためじっくり調べる時間が取れず焦っておりました。←言い訳
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- Visual Basic(VBA) VBAで、1つのエクセルで、2つのシートからもう1つのシートに条件のある転記コードを教えてください。 1 2023/03/16 18:07
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Excel(エクセル) 【画像あり】A1が●+B1と同じ文字がB列にある+C1と同じ文字がC列にある場合D1に〇を付ける 3 2023/03/09 18:18
- Excel(エクセル) アウトラインの小計のやり方 1 2023/03/20 11:51
- Visual Basic(VBA) VBA シート間の転記で、条件の追加コードの書き方について教えて下さい。 13 2023/02/26 09:31
- SQL Server SQL Oracle serverにって質問です。 会社テーブルがあり、そのテーブルから 社員名、給 4 2022/05/21 12:22
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- Excel(エクセル) 列を自動で追加したい 3 2022/07/11 12:58
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
【SQL】他テーブルに含まれる値に合致する行を抽出
その他(データベース)
-
オラクルのUPDATEで複数テーブル
Oracle
-
SQL 複数テーブルのupdate
Oracle
-
-
4
他のテーブルを参照した値はupdateでsetできない?
Oracle
-
5
SQL、2つのテーブルで条件一致したものだけdeleteする方法は?
Oracle
-
6
ROWNUMでUPDATEをしたいのですが・・・。
Oracle
-
7
updateで複数行更新したい
Oracle
-
8
INSERT文でフィールドの1つだけを他のテーブルから取ってきた値を入れたい
その他(データベース)
-
9
ORA-01013のエラーについて経験のある方お願いします。
Oracle
-
10
SELECT INTOで一度に複数の変数へ代入をするにはどのようにすれがよいでしょうか?
PostgreSQL
-
11
最大バイト数を調べるSQL文を教えてください
Oracle
-
12
SQLPLUSで結果を画面に表示しない
Oracle
-
13
SQLローダーCSV取込で、囲み文字がデータ中に入っている場合について
Oracle
-
14
SQL>UPDATEと同時にその件数をCOUNTする方法
その他(データベース)
-
15
数値フィールドのワイルドカードについて
PostgreSQL
-
16
SELECTで1件のみ取得するには?
Oracle
-
17
単一グループのグループ関数ではありません。
Oracle
-
18
SQLで特定の項目の重複のみを排除した全項目を取得する方法
その他(プログラミング・Web制作)
-
19
CSVファイルの中で、「 , 」カンマを使いたい
その他(コンピューター・テクノロジー)
-
20
GROUP BYを行った後に結合したい。
Oracle
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SELECT 文 GROUP での1件目を...
-
外部参照してるキーを主キーに...
-
SQLで列名を変数にできないでし...
-
Access:クエリーにて集計後に...
-
SQLによる"あいうえお"順でソー...
-
列のヘッダーを含めるのをデフ...
-
【VB.NET】日付型の列にNULLを...
-
列番号による項目の取得について
-
Accessでの全データから空白削除
-
テーブル列数とデータファイル...
-
UPDATE文のWHERE条件に他のテー...
-
重複データの抽出方法(複数項目)
-
identity属性の列に自動採番(SQL)
-
特定の列だけをGROUP BYしたい時
-
bcp out の使い方
-
項目名に大文字と小文字の混在...
-
伝票番号、品番、在庫としてマ...
-
SQLのクエリ、又はプロシージャ...
-
差し込み後、元データを変更し...
-
フィルターかけた後、重複を除...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SELECT 文 GROUP での1件目を...
-
外部参照してるキーを主キーに...
-
SQLで列名を変数にできないでし...
-
列のヘッダーを含めるのをデフ...
-
Access:クエリーにて集計後に...
-
列番号による項目の取得について
-
【VB.NET】日付型の列にNULLを...
-
UPDATE文のWHERE条件に他のテー...
-
SQLによる"あいうえお"順でソー...
-
特定の文字列で列を区切るには?
-
テーブル列数とデータファイル...
-
項目名に大文字と小文字の混在...
-
特定の列だけをGROUP BYしたい時
-
Accessでの全データから空白削除
-
複数列の最大値を求めたい
-
SQLのクエリ、又はプロシージャ...
-
DB2のSQL
-
IDENTITY列の更新で失敗する
-
SQLについて質問です。 テーブ...
-
Accessのリストボックスについて
おすすめ情報