
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で質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLのエラー(~付近に不適切な...
-
ACCESS2007 フォーム 「バリア...
-
Accessの重複なしのカウントの...
-
SQL Date型の列から年月だけを...
-
sqlserverで集計結果をUPDATEし...
-
SQL Server management studio ...
-
ACCESSで複数テーブルを結合し...
-
BULK INSERT時のNull許容について
-
Microsoft SQL Serverについて
-
Wacom Cintiq 16 と Wacom Cint...
-
SQLをはじめから勉強するには
-
SQL クエリ データ数
-
Tverは無料でしょうか?
-
SQLCMDにて教えていただきたい...
-
Visuaal Studio Community 2022...
-
AccessのInsertクエリのあとつ...
-
SQLサーバで和暦から西暦に変換...
-
sqlserverでUPDATEできません
-
Access2013で操作ログを残した...
-
IDが重複した場合、その他のデ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQLの作成について
-
結合のSELECT文の記述の仕方
-
selectの内容によって、登録す...
-
集計のSQLについて
-
GROUP BYを行った後に結合した...
-
Oracleでの文字列連結サイズの上限
-
OracleのSQL*PLUSで、デー...
-
Accessで別テーブルの値をフォ...
-
決定性有限オートマトン
-
select insertで複数テーブルか...
-
DataGridViewの、選択されてい...
-
ファイル書込みで一行もしくは...
-
レコードが存在しなかった場合
-
ADO VBA 実行時エラー3021
-
最新の日付とその金額をクエリ...
-
実績累計の求め方と意味を教え...
-
Date型にNULLをセットしたい V...
-
SELECTで1件のみ取得するには?
-
Excelでセルの書式設定を使用し...
-
select句副問い合わせ 値の個...
おすすめ情報