みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
OS:[ ]
FileMaker Ver:[ ]
OS:[windows 7]
FileMaker Ver:[fm13 ]
FMの相談というよりはSQLの書き方の問題かと思いますが、
他に相談できる場所がわからないので相談させてください。
ODBCを用いてSQLでデータをSERVERからインポートします。
その際のテーブルが簡単に書くとこんな感じです。
テーブル名:親子構成表
①親品番
②子品番
③使用数
これをUNIONクエリを用いて、何階層かにつなげたいのです。
SQLの知識があまり無いため、これが可能なのかわからないのですが、
次のように書いてみました。
SELECT 親品番 AS 品番1, 子品番 AS 品番2
FROM"親子構成表" AS 親子構成表1
UNION ALL
SELECT 親品番 AS 品番2, 子品番 AS 品番3
FROM"親子構成表" AS 親子構成表2
UNION ALL
SELECT 親品番 AS 品番3, 子品番 AS 品番4
FROM"親子構成表" AS 親子構成表3
UNION ALL
SELECT 親品番 AS 品番4, 子品番 AS 品番5
FROM"親子構成表" AS 親子構成表4
これだとフィールド 品番1、 品番2しかデータが収納されません。
SQLSERVERのデータをodbcを用いて上記のようなデータをfilemakerに
落とせるかどうか、落とせるのであれば正しい書き方をどなたかご教授をお願いします。
重複したデータを削除or除いてインポートするsqlの書き方があれば合わせてご教授いただければ幸いです。
よろしくお願いいたします。
UNIONは結果の行を一度にインポートできるだけなんで、「階層」にはなりません。最初のSELECTの列名しか使わないのでUNION以後のASは意味がありません。
FROMは全部同じテーブルになってますけど、「階層」とはどういう意味ですか?
UNIONは結果の行を一度にインポートできるだけなんで、「階層」にはなりません。最初のSELECTの列名しか使わないのでUNION以後のASは意味がありません。
FROMは全部同じテーブルになってますけど、「階層」とはどういう意味ですか?
コメントありがとうございます。
部品構成表は、最親品番から最子供品番までいくつもの階層が一つのテーブルにまとめられています。
このテーブルのみを使って、生産管理でいうところのストラクチャ型のBOMを作成したいのです。
UNIONでなくJOINを使わないとだめなのでは?
階層数に制限があるんですか?
UNIONでなくJOINを使わないとだめなのでは?
階層数に制限があるんですか?
ありがとうございます。
階層は、上記のとおり、5階層までです。
とりあえず3階層でやってみたら。
SELECT t1.親品番 AS 品番1, t1.子品番 AS 品番2, t2.子品番 AS 品番3
FROM 親子構成表 AS t1, 親子構成表 AS t2
WHERE t1.子品番=t2.親品番
とりあえず3階層でやってみたら。
SELECT t1.親品番 AS 品番1, t1.子品番 AS 品番2, t2.子品番 AS 品番3
FROM 親子構成表 AS t1, 親子構成表 AS t2
WHERE t1.子品番=t2.親品番
ありがとうございます。
上記はできましたが、3つ以上のテーブルはできないのでしょうか?
同様に結合すればいくらでもできます。
LEFT JOINを使わないと、子のない親は抽出されなくなります。
ありがとうございました。
できました。
Pages: 1
[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 517.73 KiB (Peak: 522.27 KiB) ]