私はそれがきちんと仕事をしていません気づきました。UPDATEテーブル
問題がある:内部結合の内側にそれはサブクエリから作成したテーブルとテーブルNOEUDに参加している
。 noeudテーブルのすべてのノードではなく、サブクエリテーブルからnoeudだけを更新します。
n_amontが以前のnoeudであるため、サブクエリ(ケーブル距離1mのnoeud.n_amont = noeud.noeudを持つすべてのフィールドのリスト)で選択が適切に行われます。私はすべてのn_amontをテーブルnoeud全体からの対応するnoeudと一致する選択から更新したいと思います。
ありがとうございます。
UPDATE [SELECT noeuds.* FROM noeuds WHERE (((noeuds.LONG_CABLE)=" 1") AND (noeuds.DELETED=" "))]. AS a INNER JOIN noeuds AS n ON a.n_amont=n.noeud SET n.INSEE_COM = a.INSEE_COM, n.RIVOLI = a.RIVOLI, n.NUM_VOIE = a.NUM_VOIE
WHERE ((n.INSEE_COM)=" ");
誰でも手助けできますか?
EDIT:
私は(noueds)このテーブルを持っている:
NOEUD TYPE_MAT N_AMONT LONG_CABLE RIVOLI (+3 fields for update)
123 REP 100 12 abc
130 AMP 229 12
173 PPP 130 1 AAA
を私がノードを持っているものの後のノードからすべてのデータのアドレスを埋めるためにUPDATEクエリを書きたいです.LONG_CABLE = 1.たとえば
:私はすべてのノードを検索
LONG_CABLE = 1、私にnoeudを与える173; 130より前のノードは173の同じリボリを持つ必要があります。
このケーブルは、特定の通りにインストールされたこの装置のアドレスを示します。私がPPP(タイプ)を記入すると、アドレスは同じ極またはマンホールのアドレスに変換されません(1m離れた=コネクタ)。
私が投稿したこの質問では、前のノード(173)を持つノードを選択できますが、参加すると、他の装備から1m離れているとn_amont 130(ノード関連130)だけが参加します。この場合は無視され、アドレスは更新されません。 クエリはNOEUDSテーブルで実行され、更新が必要な装備品が見つかりました。
この問題を解決するには、
[OK]を、上記のあなたの例では、NOEUD#130がNOEUDの#173と同じリヴォリを持っている必要がありますので、? #173のケーブルは1mですが、130は12mです。いいえ、130のケーブルの長さが1mだった場合はどうすればよいですか? – ristonj
NOEUD#130は#173と同じアドレスを持つ必要があります。この表は、機器173がNoeud#130からの1mケーブルを使用して接続されているため、同じアドレスが必要であることを示しています。ノード3130は他のアドレスから離れており、他のアドレスは12m離れている。 – Odones