実現したいこと
case whenか別の方法でTable Cを作りたいです。
しかし、TableBのグループの項目の列は現在存在していないので、直接select文に書こうと思います。
質問
SQLServerでビューを作っています。
条件(条件1)が同じで、複数の値を返して欲しいです。
■■ 以下のように試しましたが、case whenの最初行の少年グループしか出ません。
「select , ‘○○’ as グループ」にしても、一つの値しか追加できません。
Table A a INNER JOIN (SELECT (CASE WHEN 商品 = Teddy Bear THEN 少年 WHEN 商品 = Teddy Bear THEN 青年 WHEN 商品 = Teddy Bear THEN 成人 ELSE NULL END) as グループ from Table B) b on a.商品 = b.商品
CASE WHENで実現できますでしょうか。もしくは他の方法で実現できますか。
ご存知の方、教えていただけますでしょうか。
参考した資料
1."SELECT文で表示する際に任意の列を追加する方法!"
https://programmer-life.work/sql/add-column-select-sql
「条件が同じで、複数の値を返して欲しい」のおっしゃる意味がわかりません
具体的にどういうデータからどういう結果がほしいのか例示できますか?
サンプルで良いので、具体的なテーブル定義とデータ(SQL文で提示されるとありがたい)、
どういう結果を得たいのかを具体的に(複数の値を得た結果の表とか処理結果)
そして自身が試したことを記載されたほうが良いと思います。
(現状だと大目標が見えにくい)
要件次第ですが、まぁ現状だけだと「CASEでは不可」です。
編集されたようですが具体性はないと思います。
文章で難しそうなら図示するなどしてもらえたら
条件も条件1をなんども評価していますがこれは各条件は違うんですよね?
ご指摘ありがとうございます。
図示を追加しました!
何度も申し訳ないですが質問タグMySQLは外しておいたほうが良いと思います。
あとは質問本文にSQL Serverのバージョンを追加
> TableBのグループの項目の列は現在存在していない
の意味がわかりません。逆にどうやって少年・青年・成人があると判断するのですか?

回答3件
あなたの回答
tips
プレビュー