У нас есть две таблицы table1 table2

In table1

Itemnumber    SalesCode
123            213UB
142            132NB
1458           256GD

In table2
Itemnumber    ProductGroupCode
123            
142           
1458  

После обновления table2 Нам понадобится вот такое

 Itemnumber    ProductGroupCode
    123            213UB
    142            132NB
    1458           256GD

Мы пробовали вот так

tx.executeSql('UPDATE  table2 JOIN  table1 ON (table2.ItemNumber=table1.ItemNumber) SET table2.CustomerPriceGroup = table1.SalesCode');

Но мы получили такую ​​ошибку

Colud not prepare Statement (Near "JOIN ":syntax error)

Скажите, пожалуйста, что не так в моем коде

0
naresh koppera 23 Май 2015 в 11:21

1 ответ

Лучший ответ

SQLite не поддерживает JOINs в операторах UPDATE.

Вы можете достичь того же результата, используя подзапрос, подобный следующему

UPDATE table2 
SET table2.CustomerPriceGroup = 
(SELECT table1.SalesCode FROM table1 WHERE table2.ItemNumber=table1.ItemNumber)
1
Muhammad Nagy 23 Май 2015 в 14:55