過去の桐井戸端BBS (桐ver.9)
22069 結合表のデータの並びが元の表と全く逆の順で並んでしまう Murakami 2003/08/29-17:33
二つの表を結合した場合のデータの並びについてお尋ねします。

売上ヘッダ.tbl
売上明細.tbl

上記の二つの表を結合したとき、売上明細の入力順とは全く逆の順序で並んでしまいます。
今まで結合表から書き出した表の中で並べ替えを行っていたせいか、あまり気にしたことがなかったのですが、
結合表の定義のやり方で元の表と同じ並びにすることができるのでしょうか。

初歩的な質問で恐縮ですがよろしくお願いいたします。
22070 Re:結合表のデータの並び 佐田 守弘 2003/08/29-18:24
記事番号22069へのコメント
Murakamiさん
結合表を開いた時に表示される表、これが本来の意味での「結合表」ですが、
まぎらわしいといけないので、ここでは「結合結果の表」と言う事にします。

単純に結合を行った時の、結合結果の表のデータの並び方は、元表の並びとは脈絡の
なさそうな順序になります。

これを目的通りの順序とするには、結合表の定義画面にて、
並べ替えの設定を行って下さい。

佐田守弘(KS-00119)
22081 Re:結合表のデータの並び Murakami 2003/08/30-01:15
記事番号22070へのコメント
佐田守弘先生 早速のレスありがとうございます。

結局元の表の並びどおりにならないのは仕方のないことなのですね。
どうしても元の表のとおりに並べるには、並び順等の項目を作って
結合結果の表を並べ替えることで解決することにしました。

どうも有り難うございました。

22083 Re:結合表のデータの並び 悲しげ 2003/08/30-13:18
記事番号22069へのコメント
どもっ、Murakamiさん
実は私も全く同じ問題にぶち当たったことがありまして、
それは↓です。

http://www.fuku3.com/~habata/kbbs/kakov8/17020.htm

22087 【補足】>結合表のデータの並び 佐田 守弘 2003/08/30-18:59
記事番号22081へのコメント
結合表(結合結果の表)のデータ並びについて補足します。
例えば例として挙げれば、売上に対して商品マスタや顧客マスタを結合する様な1対n型の結合や、
結合対象表が1つしかない様な場合には、結合で得られた表のレコード数はn側の表(対象表が1つの時にはその表)と
同じになると思います。
ですからこの場合には元の表(多分n側の表の事)の順序が継承されないのかといった疑問が出て来ると思います。

しかし結合の方法を一般論的に拡大すると、結合表の行数は結合対象表と同じとは限りません。
対象表の1レコードに対応して、複数行できたり、
あるいは片方の表にはないレコードを作り出す事もできます。
こうなると、元の表の順序という事自体が意味を持たなくなるのだろうと思います。

データベースは元来、データの並び順に意味はなく、必要なデータだけを抽出して、
それを必要に応じて指定した並び順で表示して使うものだと思います。
そしてその操作を行うのが結合(一般的に言えばクエリー)ですから、
結合表に目的の抽出条件と並べ替えを指定して使うという事になるのかと思います。

佐田守弘(KS-00119)

22105 Re:【補足】>結合表のデータの並び Murakami 2003/09/01-15:43
記事番号22087へのコメント
佐田先生  ありがとうございます。

いろいろやってみてよく解りました。
今後ともよろしくお願いいたします。
ありがとうございました。
22106 Re:結合表のデータの並び Murakami 2003/09/01-15:49
記事番号22083へのコメント
悲しげさん ありがとうございます。

悲しげさんが同じことを疑問に思われたことがあったのを知って
少し安心しました。
今回は悲しげさんの1の方法で解決しました。

まだまだ未熟者ですのでこれからもよろしくご指導お願いいたします。

戻る