excitemusic

日記なのかメモなのか。。気ままに綴るRageの独り言 Mail to rageload@excite.co.jp
by rageload
ICELANDia
S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
カテゴリ
以前の記事
フォロー中のブログ
+++ リンク +++
その他のジャンル
ファン
記事ランキング
ブログジャンル
画像一覧


やべ~・・

まじでしんどい!
まともに寝てない・・そういえば去年の今頃もこんな感じだったな
3日は寝ずにプログラムつくりで、4日目の夜中に倒れた記憶がw

今回もまた。。まぁまだ完全徹夜じゃないんでいくらかましだけどね

実は障害者自立支援法の施行に伴ってのソフト開発をしているわけですが
ようやくにして、変更点(ほとんどだがw)が理解できてコアの計算部分をつくり変えしているところ

まぁ計算のロジックはなんとか解決できたけど、データメンテの画面制御とレポートの制御に一苦労ちゅう


久しぶりにSQL叩いてるんで、忘れてしまってる気もするw

ここで質問
表1に
A_ID、年月日のフィールド
表2に
B_ID、名前、A_ID、地名IDのフィールド

表3に
C_ID、地名
表1にはオートナンバーでA_IDにナンバリングしながらキーを登録
同時にその年月日を登録するという風にしてます
表2にオートナンバーでB_IDにキーを登録
名前にテキスト、A_IDに表1で発生したキー、地名IDに表3に存在する数値を登録します
表3には予め情報が入っている

実例
表1
A_ID  年月日
1    2006/04/01
2    2006/04/02
3    2006/04/04

表2
B_ID  名前    A_ID   地名ID
1    名前A    1       2
2    名前B    1       1
3    名前C    2       1
4    名前D    3       3

表3
C_ID    地名
1       A地区
2       B地区
3       C地区


この状態のときに表1のA_IDと年月日、表2の名前、表3の地名をSelectしたいと思います

select 表1.A_ID,表1.年月日,表2.名前,表3.地名
from 表1 left join 表2 on 表1.A_ID=表2.A_ID and (表2.地名ID=表3.C_ID)
order by 表1.年月日

ちとfrom以降記述が違うと思うけど、left joinでつなぎたいってことだけわかってw

こうすると、多分下のような結果が出ると思いますが
A_ID 年月日      名前     地名
1    2006/04/01   名前A B地区
1    2006/04/01   名前B A地区
2    2006/04/02   名前C A地区
3    2006/04/04 名前D C地区

俺がほしいのはA_IDが重複しない結果なんです
A_ID 年月日      名前     地名
1    2006/04/01   名前A B地区
2    2006/04/02   名前C A地区
3    2006/04/04 名前D C地区
こういうのがほしいんだけど、A_IDでDistinctしても名前、地名が違うためどうしてもA_IDの1が二重で出てきます

どうしたらいいのか教えて。。。まじでやべぇよw
[PR]
by rageload | 2006-04-29 20:21 | 日記みたいなもの
<< もう少し! 本日もネタで >>