![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
SELECT文の作成で行き詰ってしまって困っています。
タイトルのニュアンスが適当じゃないのですが、
MasterUserとTableParentの2つのテーブルがあり
MasterUser
|user_no|use_name|
| 0 |山田太郎|
| 1 |山田次朗|
TableParent
|rec_no|father|son|
| 0 | 0 | 1 |
TableParent.rec_no:ユニークな数字
TableParent.father:=MasterUser.user_no
TableParent.son :=MasterUser.user_no
という条件で
|rec_no| father | son |
| 0 |山田太郎|山田次朗|
のような結果を1回で取得するSELECT文は作成可能でしょうか?
自分でやってみた感じ出来ない感じがしました。
正規化を学び始めたばかりなので、テーブルの作成から違う可能性も
ありそうなんですが、何か参考になりそうなサイトがあったら
教えて頂けると嬉しいです。
よろしくおねがいします
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
「階層問い合わせ」っぽい話ですね。
SQL Server2005だと「階層問い合わせ」はできるみたいです。
http://msdn.microsoft.com/ja-jp/library/ms175972 …
>J. 複数のアンカー メンバと再帰メンバを使用する
設計的には「階層問い合わせ」を調べてみてください。
fatherがいるならmotherがいると思うので。
「階層問い合わせ」なら家系をさかのぼることも可能ですよ。
現状だと参考に教えて頂いたサイトの様にソース上でやってました。
けど、ストアドプロシージャ使うのは全く頭になかったです。
同じサイト内を見てたんですが、SQLServer内で完結するように
いろいろとやり方があるんですね。
もっと勉強しないとダメですね。
有用なサイトを教えていただきありがとうございました。
No.1
- 回答日時:
これでどうですか
selectt1.rec_no
,t2.user_nameasfather
,t3.user_nameasson
fromTableParentt1
left outer join
MasterUsert2
ont2.user_no= t1.father
left outer join
MasterUsert3
ont3.user_no= t1.son
ど真ん中で出来ました。
LeftJoinとか良く分からなかったので逃げてたのが
いけなかったみたいですね。
諦めかけてたのに、一発でできちゃうなんてすごいです。
自分の勉強不足を痛感しました
素早い回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle SQL update方法 2 2022/06/22 14:07
- PHP クエリObjectをforeachで回す時に、次のレコードへ移動せずに次のレコードを取得したい 2 2022/07/28 15:29
- Oracle sqlで質問です。 Aテーブルの登録番号をキーにBテーブルから確認番号を取得したいのですが、Bテーブ 4 2023/05/18 13:08
- PHP MySql PHP 2つのテーブルをJOINで結合 user_idで抽出 1 2023/01/03 14:04
- Oracle sqlで質問です。 idを元にidに紐付くデータで住所コードがjpのみのデータ以外のidを取得したい 4 2023/03/20 17:41
- Excel(エクセル) EXCEL 関数を教えてください。(A列の同じ値が複数ある場合vlookupで出来ますか) 4 2022/12/07 20:54
- MySQL 【MySQL】本当に困っているので、助けてください。よろしくお願いします。 3 2023/06/03 14:24
- その他(プログラミング・Web制作) Pythonで会員サイトの自動ログイン ID Nameがない 1 2022/12/16 02:09
- Visual Basic(VBA) VBAでのMATCH関数 3 2022/10/17 19:06
- Oracle 質問です。 下記のテーブルとデータがあり、 取得想定結果のように出力したいです。 下記のsqlだと0 2 2023/05/23 19:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLを考えてます。
-
Oracleでの文字列連結サイズの上限
-
GROUP BYを行った後に結合した...
-
access 自動採番 年が変わる...
-
Accessで別テーブルの値をフォ...
-
ADO VBA 実行時エラー3021
-
select句副問い合わせ 値の個...
-
Excelで、改行がある場合の条件...
-
SELECTで1件のみ取得するには?
-
select insertで複数テーブルか...
-
使うべきでない文字。
-
OracleのSQL*PLUSで、デー...
-
SELECTの結果で同一行を複数回...
-
SQL文で右から1文字だけ削除す...
-
JSPのNULLレコード表示について...
-
MERGE文を単体テーブルに対して...
-
GROUP BYを使ったSELECT文の総...
-
Access でレコードセレクタが押...
-
sqlplusの処理が途中でとまる
-
他のテーブルを参照した値はupd...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
orace 変更表エラーを回避する...
-
年月が連続したテーブルとそう...
-
PL/SQL 条件アップデートについて
-
SQLの作成について
-
Oracle SQL 2つのテーブルを使...
-
SELECT文で条件にあったテーブ...
-
ORACLEで2つのテーブルを同時に...
-
こういうDELETE文を作成したい...
-
同じフィールドから2種類の値を...
-
こういうSELECTは可能でしょうか?
-
SQLを考えてます。
-
★アクセス2000★条件付き合計金...
-
FOREIGN KEYの書き方
-
GROUP BYを行った後に結合した...
-
Oracleでの文字列連結サイズの上限
-
Accessで別テーブルの値をフォ...
-
SELECTで1件のみ取得するには?
-
SQL文で右から1文字だけ削除す...
-
ADO VBA 実行時エラー3021
-
ファイル書込みで一行もしくは...
おすすめ情報