下記のSQL文に対して、WHERE句の抽出条件によって、
Cの値が重複していれば、一行にしてCの値をNULLに変えたいです。
どの様に書き直せばいいでしょうか?
ご教授いただければ幸いです。
sql
1SELECT T1.A,T2.B,T2.C 2FROM Table1 T1,Table2 T2 3WHERE T1.***=T2.***
「Cの値が一つ」とはどういう意味ですか?「Cの値が2つ以上」の場合というのが想像できません。またNULLを入れたいとありますがどこに入れるのですか?
すみません、複数のTABLEでSELECTをかけているという前提でした。
Cはどっちのテーブル?
CはT2のテーブルです。
相変わらず意味が不明です。Cの値が複数とは「whereで検索した2行以上返る」という意味ですか?もしそうだと仮定して片方に値があって片方NULLの場合は?すべて値が同じ場合は?
Cの値が重複しているレコードを一行にして、その値をNULLにしたいです。
回答しちゃったけど、外している可能性大。前の質問もそうですけど、質問が不明瞭です。もっと具体的な内容でお願いします。
>Cの値が重複しているレコードを一行にして データ削除するってことですか?
そうですね。
Cの値が重複しているというのは何に対してですか?テーブル全体でというのはあり得ないでしょうし。
複数重複していたとして、どのデータを削除して、どのデータを残すかの条件は?
テーブルを手書きで書いたほうがいいです。質問者さんは多分言葉では説明できないと思います。この期に及んでも何をしたいのかよくわかりません。
教授と教示の違いも理解できた方が良いです。
回答2件
あなたの回答
tips
プレビュー