0

2 つのテーブルがあり、一方から他方にデータを移動する必要があります。特定の値を最初の列から移動したいだけです。つまり、それらが = ni (varchar) の場合、2 番目の新しい列に移動します。

そこで、テーブルlime_survey_56999から以下のnrデータを選択したいと思います

`id` `56999X159X3400`
1    2
2    6                  
3    nr
4    mi

それを新しいテーブルlime_survey_56999_cubeに移動して、

`id`  `External-Unique-Factors4NR`
1     NULL
2     NULL                  
3     nr
4     NULL

すでにlime_survey_56999_cubeにデータがあり、最初のテーブルの元の行と一致させる必要があるため、INSERT INTOを使用できません。

以下は私の試みとその結果/エラーメッセージです

UPDATE `lime_survey_56999_cube` set `lime_survey_56999_cube`.`External-Unique-Factors4NR` = (select `56999X159X3400` from `lime_survey_56999` where `56999X159X3400` = 'nr')

エラー #1242 - サブクエリが複数の行を返す

UPDATE `lime_survey_56999_cube` 
SET `External-Unique-Factors4NR` = 'nr'
WHERE `56999X159X3400` in (select `56999X159X3400` from `lime_survey_56999` where `56999X159X3400` = 'nr');

エラー #1054 - 「IN/ALL/ANY サブクエリ」の不明な列「56999X159X3400」

UPDATE `lime_survey_56999_cube` 
INNER JOIN `lime_survey_56999` 
SET `lime_survey_56999_cube`.`External-Unique-Factors4NR` = `lime_survey_56999`.`56999X159X3400` 
WHERE `lime_survey_56999`.`56999X159X3400` = 'nr'

これは、最初のテーブルのエントリに対応する場所ではなく、External-Unique-Factors4NR のすべての列に nr を入れるだけです。

どんな助けでも大歓迎です!私はこれで髪を引き裂いています!

4

1 に答える 1

0

ON結合の句がありません

UPDATE `lime_survey_56999_cube`
INNER JOIN `lime_survey_56999` 
ON `lime_survey_56999_cube`.???? = `lime_survey_56999`.????
SET `lime_survey_56999_cube`.`External-Unique-Factors4NR` = `lime_survey_56999`.`56999X159X3400` 
WHERE `lime_survey_56999`.`56999X159X3400` = 'nr'

????対応する列名に置き換えます

于 2011-06-27T09:20:11.577 に答える