- PR -

データの取得方法について

投稿者投稿内容
今川 美保(夏椰)
ぬし
会議室デビュー日: 2004/06/10
投稿数: 363
お住まい・勤務地: 神奈川県茅ヶ崎市
投稿日時: 2005-06-20 14:00
使われているDBMSを記述されていないので、なんとも言いがたいですが、
OracleであればDECODEやNVLを使えばいいかと思います。
SQLServerなどではCASE式があるので、そちらを利用されてはいかがでしょうか。
Dra
大ベテラン
会議室デビュー日: 2004/10/04
投稿数: 111
投稿日時: 2005-06-20 14:11
夏椰さん、ありがとうございます。
DBは、Oracle10gを使用しています。
テーブルA,Bは"COLUMN4","COLUMN5","COLUMN6"・・・と複数の
カラムを持っています。(違いは"COLUMN3"があるかないかです)
COLUM1 |COLUM2 |COLUM3 |COLUM4 |COLUM5 |COLUM6 |・・・・
1 201 A3 A4 A5 A6
2 202 10 B3 B4 B5 B6
3 203 A3 A4 A5 A6

とにかく2レコード目はテーブルBのデータを表示したいのです。
何度もすいませんがお願い致します。
今川 美保(夏椰)
ぬし
会議室デビュー日: 2004/06/10
投稿数: 363
お住まい・勤務地: 神奈川県茅ヶ崎市
投稿日時: 2005-06-20 14:18
まず外部結合を理解されていますか?
一郎
ぬし
会議室デビュー日: 2002/10/11
投稿数: 1081
投稿日時: 2005-06-20 14:21
"外部結合"
マジお勧め。
未記入X
大ベテラン
会議室デビュー日: 2005/05/19
投稿数: 136
投稿日時: 2005-06-20 14:23

これまでの書き込みから判断して、

「お願い致します。」ので、そのものズバリ解答なSQLを書いてください。
「何度もすいませんがお願い致します。」

という訳でよろしいですか?

一郎さんは進む道を端的に表現し、
かやさんも、じゃんぬねっとさんも
「自分で考えて理解してから」
と仰っているというのに…
Dra
大ベテラン
会議室デビュー日: 2004/10/04
投稿数: 111
投稿日時: 2005-06-20 14:24
夏椰さん、ありがとうございます。
そこそこは理解しているつもりです・・・
外部結合(A left join B)で行うと、2レコード目がテーブルAのデータしか取れないのでは、
と思うのですが・・A join Bでもどのような条件で、3レコードに絞るか分かりません。
その他は思いつきません。すいませんお願いします。
今川 美保(夏椰)
ぬし
会議室デビュー日: 2004/06/10
投稿数: 363
お住まい・勤務地: 神奈川県茅ヶ崎市
投稿日時: 2005-06-20 14:26
引用:

Draさんの書き込み (2005-06-20 14:24) より:
そこそこは理解しているつもりです・・・
外部結合(A left join B)で行うと、2レコード目がテーブルAのデータしか取れないのでは、


JoinとOuter Joinは取得されるデータが異なります。
単純にA left outer join B のSQLを実行してみては?

----書き忘れたので追加-----
Joinは外部結合ではありません。
外部結合=Outer Joinです。

[ メッセージ編集済み 編集者: 夏椰(かや) 編集日時 2005-06-20 14:27 ]
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-06-20 14:26
引用:

とにかく2レコード目はテーブルBのデータを表示したいのです。
何度もすいませんがお願い致します。


とにかく何度も何度もお願いするだけでは、根本的な問題は解決しませんよ?
それと、夏椰(かや) さんからの問いかけは無視ですか?
もし、DBMS の意味がわからないのであれば、調べてみましょう。

  DBMS とは

同様に、外部結合についても、最初に言ったように自分で調べてみてください。
そうでないと、本当の意味での問題解決にはならないと思います。

  外部結合とは

もし、調べているのであれば、"何が" わからないのか明示化できますよね?
とりあえず、目の前の問題だけ解決できれば良いというのであれば別ですが、
私としましては、そうであって欲しくないと願っています。

[ シグネチャを削除 ]

[ メッセージ編集済み 編集者: じゃんぬねっと 編集日時 2006-10-12 13:23 ]

スキルアップ/キャリアアップ(JOB@IT)